2016-01-07 45 views
0
connection = urllib.request.urlopen("http://www.wdyl.com/profanity?q=" + text_to_check) 

添加自定义参数在URL我不知道为什么,但上面的代码是不是在Python 3.5和几个小时的搜索我没有找到任何答案后工作。我想要做的是在URL关于Python 3.5

我收到错误的末尾添加text_to_check字符串是:

raise HTTPError(req.full_url, code, msg, hdrs, fp) 
urllib.error.HTTPError: HTTP Error 400: Bad Request 
+3

“不工作”是关于问题最无用的定义。请解释你准确得到的。 –

+1

我编辑了我的问题。如果我删除了+ text_to_check部分,那么这个url本身没有任何错误或问题 – fuzunspm

+1

你的'text_to_check'失败时是什么? – eumiro

回答

1

的问题是你的text_to_check

试试这个:

query = urllib.parse.urlencode({'q': text_to_check}) 
urllib.request.urlopen("http://www.wdyl.com/profanity?" + query) 

printquery变量,看看有什么是为了作为一个URL正常工作与“全从.txt文件文本”的情况发生。

+0

它的工作谢谢你!但我不明白代码。我搜索了很多,但没有提供的解决方案与此方法类似 – fuzunspm

+1

@fuzunspm - 您还可以查看'requests',这可能会缩短您需要的方法数量:http://docs.python-requests .ORG/EN /最新/用户/快速启动/#传递参数式的URL – eumiro