我有这个网站:填充类型文本,然后按输入提交使用python
<input type="text" class="txtSearch">
<input type="submit" value="Search" class="sbtSearch">
我需要的是在文本字段写,然后点击提交使用python。输入标签不在表格内。我怎么能做到这一点?
我有这个网站:填充类型文本,然后按输入提交使用python
<input type="text" class="txtSearch">
<input type="submit" value="Search" class="sbtSearch">
我需要的是在文本字段写,然后点击提交使用python。输入标签不在表格内。我怎么能做到这一点?
您不应该实际填充字段并单击提交。您可以模拟提交并获得期望的结果。
使用BeautifulSoup和urllib与Firefox中的萤火虫一起使用。使用萤火虫观察网络流量,并从HTTP POST中获取提交为dong的发布参数。创建一个字典和网址编码它。将它与您的网址请求一起传送。
例如:
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)
帕拉姆瓦尔斯将根据您尝试提交什么样的变化。在你的代码中做适当的调整。
如果你真的需要填充字段,这里有一个硒解决方案。不过,您通常只需要这些用于测试目的。
from selenium import webdriver
webpage = r"https://www.yourwebsite.com/" # edit me
searchterm = "Hurricane Sandy" # edit me
driver = webdriver.Chrome()
driver.get(webpage)
sbox = driver.find_element_by_class_name("txtSearch")
sbox.send_keys(searchterm)
submit = driver.find_element_by_class_name("sbtSearch")
submit.click()
我试图找到谷歌,但没有找到任何简单的例子......所有我能找到的是长的文件,我根本不能理解......我认为我需要使用机械化,但它需要形式...我应该告诉你什么? – a1204773