查找Python网页抓取工具的完整解决方案

时间:2014-11-07 22:45:25

标签: python amazon-web-services scrapy web-crawler

首先 - 非常感谢提前。我真的很感激。

  1. 所以我需要不断地(大约每小时)抓取少量网址并获取具体数据

  2. PHP网站将使用已抓取的数据进行更新,我无法更改

  3. 我已经阅读了这个解决方案:Best solution to host a crawler?这似乎很好,并且如果你想要扩展某些东西,它有使用云服务的优势。

    我也意识到Scrapy的存在

    现在,如果有一个更完整的解决方案来解决这个问题,我就不会把这些事情都搞定了。在我看来,这并不是我试图解决的非常明显的问题,我想节省时间并获得更完整的解决方案或说明。 我会联系这个帖子中的人来获得更具体的帮助,但我不能。 (https://stackoverflow.com/users/2335675/marcus-lind

    目前在我的个人计算机上运行Windows,试图搞乱Scrapy并不是最简单的事情,安装问题和类似的东西。

    你认为没有办法避免这项具体工作吗? 如果没有,我怎么知道我应该使用Python / Scrapy还是Ruby On Rails?

1 个答案:

答案 0 :(得分:0)

如果您尝试获取的数据结构合理,则可以使用第三方服务,例如Kimono或import.io。

我发现在Python中设置一个基本的爬虫非常容易。在查看了很多内容之后,包括Scrapy(由于噩梦依赖,它并没有很好地与我的Windows机器配合使用),我决定使用由PhantomJS驱动的Selenium的python包进行无头浏览。 / p>

定义抓取功能可能只需要少量代码。这有点简陋,但如果你想超级简单地做一个直接的python脚本,你甚至可以做这样的事情,让它在某些条件成立时运行,或直到你杀死脚本。

from selenium import webdriver
import time
crawler = webdriver.PhantomJS()
crawler.set_window_size(1024,768)
def crawl():
    crawler.get('http://www.url.com/')
    # Find your elements, get the contents, parse them using Selenium or BeautifulSoup
while True:
    crawl()
    time.sleep(3600)