Webscraping链接与手动浏览不同

时间:2017-07-25 01:46:11

标签: python web-scraping

我已经为840个网址抓了一个网站...... 当我重新发布网址以获取更多信息时,我的python scraper并没有像手动点击链接那样提供相同的数据。

例如,当我访问此网站时,https://salesweb.civilview.com/Sales/SalesSearch

如果我点击第一个'详细信息'在列表中,它将获取包含更多信息的页面。

给出的信息是显示' / Sales / SaleDetails的相对链接?PropertyId = 254119896'

我已经删除了'详细信息'相对链接然后重建链接以匹配绝对地址。 这个地址变成

https://salesweb.civilview.com/Sales/SaleDetails?PropertyId=254119896

然而,当我这样做并试图刮擦时,我得到了一组完全不同的数据,它将我带到一般的登陆页面。

https://salesweb.civilview.com/

我开始想,我需要使用无头浏览器来解决问题,但现在我不确定。

这是我的代码:

import time
from selenium import webdriver

baseurl='https://salesweb.civilview.com'
link='/Sales/SaleDetails?PropertyId=254119946'
url1=baseurl+link

driver = webdriver.PhantomJS() 
driver.get(url1)  
html = driver.page_source
time.sleep(10) 
driver.quit()

1 个答案:

答案 0 :(得分:0)

我找到了一种解决方法,如果您第一次与网站互动,则可以访问其他网址。不幸的是,我不知道它为什么会起作用:

driver = webdriver.PhantomJS()
driver.get("https://salesweb.civilview.com/")
driver.find_element_by_link_text('Atlantic County, NJ').click()
driver.get("https://salesweb.civilview.com/Sales/SaleDetails?PropertyId=254119946")
html = driver.page_source
print(html)