我正在尝试使用python搜索某事。 这是我的代码:
if request.get().strip() in inte: #that's just to understand my script
subprocess.Popen(['C:\Program Files\Internet Explorer\\iexplore.exe'])
else:
webbrowser.open("https://www.google.it/search?q=",request.get().strip(),"&oq=",request.get().strip(),"&aqs=chrome..69i57j0j69i61j0l3.1306j0j7&sourceid=chrome&ie=UTF-8")
request =文本变量来自Entry小部件。
我不理解API之类的其他方法,所以我这样做是行不通的。 谢谢!
答案 0 :(得分:0)
错误很明显:您将5个参数传递给open
方法:
webbrowser.open("https://www.google.it/search?q=",request.get().strip(),"&oq=",request.get().strip(),"&aqs=chrome..69i57j0j69i61j0l3.1306j0j7&sourceid=chrome&ie=UTF-8")
您可以使用str.format
或(懒惰的方式,无需太多输入)正确格式化,保留这样的参数,但只需加入tuple
内置的字符串:
webbrowser.open("".join(("https://www.google.it/search?q=",request.get().strip(),"&oq=",request.get().strip(),"&aqs=chrome..69i57j0j69i61j0l3.1306j0j7&sourceid=chrome&ie=UTF-8")))
说,既然你两次使用相同的参数,str.format
是首选方式:
webbrowser.open("https://www.google.it/search?q={0}&oq={0}&aqs=chrome..69i57j0j69i61j0l3.1306j0j7&sourceid=chrome&ie=UTF-8".format(request.get().strip()))