如何使用python请求模块在网站内搜索并返回响应页面?

时间:2017-04-22 06:50:55

标签: python search web-scraping web python-requests

我想从名为myip.ms的网站检索数据。我正在使用请求将数据发送到表单,然后我希望将响应页面发回给我。当我运行脚本时,它返回相同的页面(主页)作为响应。我希望下一页使用我提供的查询。我是WebScrapping的新手。这是我用来实现此目的的代码。     导入请求     来自urllib.parse导入urlencode,quote_plus     有效载荷= {         '名称':' educationmaza.com&#39 ;,         '值':' educationmaza.com&#39 ;,     }     有效载荷=用urlencode(有效载荷)     R = requests.post(" http://myip.ms/s.php",数据有效载荷=)     的infile =开放(" E://abc.html",' WB')     infile.write(r.content)     infile.close()

1 个答案:

答案 0 :(得分:0)

我没有专家,但似乎在与网页互动时,帖子由jQuery处理,requests效果不佳。 因此,您必须使用Selenium模块与之交互。 以下代码将根据需要执行:

from selenium import webdriver
driver = webdriver.PhantomJS()

driver.get("https://myip.ms/s.php")
driver.find_element_by_id("home_txt").send_keys('educationmaza.com')
driver.find_element_by_id("home_submit").click()

html = driver.page_source

infile=open("stack.html",'w') 
infile.write(html) 
infile.close()

您必须安装Selenium软件包以及Phantom.JS。 我测试了这段代码,它运行正常。如果您需要任何进一步的帮助,请告诉我们!