【问题标题】:Zillow Web Scraping using Selenium PXCaptcha使用 Selenium PXCaptcha 的 Zillow Web 抓取
【发布时间】:2023-02-18 12:12:33
【问题描述】:

我正在尝试使用 Selenium 做一个项目,该项目到达 Zillow 以查找出租房屋并归还其财产,即出租链接、价格和地址。

这是我的代码:

from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome(executable_path=CHROME_DRIVER_PATH)

driver.get(ZILLOW_HOUSES_URL)

house_links = driver.find_elements(By.CSS_SELECTOR, LINKS_CSS_SELECTOR)
prices = driver.find_elements(By.CSS_SELECTOR, PRICES_CSS_SELECTOR)
addresses = driver.find_elements(By.CSS_SELECTOR, ADDRESSES_CSS_SELECTOR)

for link in house_links:
    print(link.get_attribute('href'))
for price in prices:
    print(price.text.split('+')[0].split(', ')[0].split('/')[0])
for address in addresses:
    print(address.text)

大多数情况下,当我运行它时,它会转到 Zillow 网页,但会出现 this CaptchaPX thing。我按住不放,但它再次出现说再试一次.我再试一次,它没有停止。如何摆脱这个?

【问题讨论】:

  • 当他们有 API 时为什么要抓取?
  • 我按住不放,但它再次出现,说再试一次。我再试一次,它不会停止: 代码试验?
  • @Marat 它的一个项目
  • 他们曾经有自己的 API,但现在您是附属公司,您需要成为具有经纪业务的房地产经纪人才能获得访问权限。

标签: python python-3.x selenium selenium-webdriver zillow


【解决方案1】:

您需要确保可以保存 cookie。这让我通过了验证码。它必须是完全限定的路径,否则 Chrome 会抱怨。

sel_path = os.path.join(os.getcwd(), 'selenium')
chrome_options = Options()
chrome_options.add_argument("user-data-dir="+ sel_path)
chrome_options.add_argument("user-data-dir=selenium") 
driver = webdriver.Chrome(chrome_options=chrome_options)
driver.get(zillow_path) 

【讨论】:

    猜你喜欢
    • 2022-11-07
    • 1970-01-01
    • 2021-12-27
    • 2020-11-15
    • 1970-01-01
    • 2017-11-23
    • 1970-01-01
    • 2017-05-12
    • 1970-01-01
    相关资源
    最近更新 更多