【问题标题】:Crawling Webpges using Webdriver or BOTS ike Scrapy and Requests使用 Webdriver 或 BOTS(如 Scrappy 和 Requests)抓取网页
【发布时间】:2017-01-23 03:24:25
【问题描述】:

我正在抓取一个产品网站,其中列出了数 10000 个项目。当我使用 Scrapy 时,我意识到它必须打 POST 调用 50,000 多次,这将导致阻塞。如果我在这里使用 PhantomJs Webdriver 来自动化网页操作,会有帮助吗?我的意思是像 Selenium-PhantomJs 这样的 Webkit 和像 Scrapy 这样的 BOTS 获取数据之间有什么区别吗?使用 Selenium 可以防止被阻塞吗?请有任何建议..

【问题讨论】:

  • 你说的是 IO 阻塞还是网站禁止你?
  • 这是关于网站的,有机会被阻止以获得更多点击。
  • 慢慢来怎么样?

标签: selenium-webdriver web-scraping scrapy phantomjs python-requests


【解决方案1】:

如果你需要 POST 50,000+ 次才能通过 Scrapy 解决问题,你将花费更多的 selenium 和其他 webkit 这样的 http 请求。你需要找到禁止你的规则。

【讨论】:

  • 听不懂你的回答。
【解决方案2】:

使用 selenium,您可以更接近真实的人类行为,但达到 50000+ 对 selenium 也无济于事。

你必须使用代理,我建议轮换代理。之后,您不必担心在 50K 请求后被禁止。

【讨论】:

  • 我已经在使用代理了,虽然官方只有1个,你建议多买1个??同样在这种情况下,Selenium 还是像 Scrapy / Requests 这样的 BOTS 更好?
  • 如果您搜索为 Rotating Proxies,您会看到其中有几个。它基本上是一个 ip 和端口,但是在每个请求上它都会为您分配一个不同的 ip。所以你会得到自动旋转的代理。 Selenium v​​s Scrapy 可能是一个很深的主题,但我会选择我喜欢的那个。此外,如果您使用scrapy,也可以在用户代理中使用轮换。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-04-26
  • 1970-01-01
  • 2015-10-23
  • 1970-01-01
  • 2021-12-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多