我对Python很新,这是我第一次发布stackoverflow,作为一个开始的项目,我试图编写一个程序来收集来自不同网站的棋盘游戏的价格他们。作为其中的一部分,我尝试编写一个功能,使用网站的内置搜索功能来查找我输入的游戏所需的网页。
我目前使用的代码是:
import requests
body = {'keywords':'galaxy trucker'}
con = requests.post('http://www.thirstymeeples.co.uk/', data=body)
print(con.content)
我的问题是,它返回的网页不是我手动输入和搜索“Galaxy trucker”时所获得的网页。在网站上。
有问题的搜索表单的html是
<form method="post" action="http://www.thirstymeeples.co.uk/"> <input type="search" name="keywords" id="keywords" class="searchinput" value> </form>
我已经阅读了this但是,与我的不同之处似乎是搜索实际上出现在网页上,而在我看来,操作部分中提供的网址本身并不会显示搜索栏。在这个例子中,html中没有id关键字,而在我的情况下,这是否会产生影响?
答案 0 :(得分:0)
索引页面上没有搜索表单,但是如果您从“游戏”页面(包含表单)进行“手动”搜索,则最终会显示一个包含此网址的页面:
请注意,此页面确实采用了GET参数,如果您将keywords
从“galaxy + trucker”更改为其他任何内容,则会获得更新的结果页面。 IOW,您想在http://www.thirstymeeples.co.uk/games/search/q处执行GET请求:
r = requests.get("http://www.thirstymeeples.co.uk/games/search/q", params={"keywords": "galaxy trucker"})
print(r.content)