我有这个 html:
<input type="text" class="txtSearch">
<input type="submit" value="Search" class="sbtSearch">
我需要的是在文本字段中写入,然后单击使用 python 提交。输入标签不在 Form 内。我该怎么做?
最佳答案
您不必实际填充字段并“单击”提交。您可以模拟提交并获得所需的结果。
使用BeautifulSoup和 urllib 以及 Firefox 中的 firebug。使用 firebug 观察网络流量,并从提交正在进行的 HTTP POST 中获取 post 参数。创建一个字典并对其进行 url 编码。将它与您的网址请求一起传递。
例如:
from BeautifulSoup import BeautifulSoup
import urllib
post_params = {
param1 : val1,
param2 : val2,
param3 : val3
}
post_args = urllib.urlencode(post_params)
url = 'http://www.website.com/'
fp = urllib.urlopen(url, post_args)
soup = BeautifulSoup(fp)
参数 vals
将根据您尝试提交的内容而改变。在您的代码中做出适当的调整。
关于python - 使用 python 填写文本类型的输入并按提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13166395/