Nis*_*kta 128 python beautifulsoup web-crawler scrapy
我想建立一个网站,显示亚马逊和电子海湾产品价格之间的比较.哪个更好,为什么?我对BeautifulSoup有点熟悉,但与Scrapy爬虫不太相似.
Med*_*ros 220
Scrapy是一个Web蜘蛛或Web scraper框架,您为Scrapy提供了一个根URL以开始爬网,然后您可以指定要爬网和获取的URL数量(约束)的约束等.它是一个完整的网页抓取或抓取框架.
而
BeautifulSoup是一个解析库,它也可以很好地从URL中获取内容,并允许您毫不费力地解析它们的某些部分.它只获取您提供的URL的内容然后停止.除非您手动将其置于具有特定条件的无限循环内,否则它不会爬行.
简单来说,使用Beautiful Soup可以构建类似于Scrapy的东西.美丽的汤是一个图书馆,而Scrapy是一个完整的框架.
来源:http://www.quora.com/Python-programming-language-1/How-is-BeautifulSoup-different-from-Scrapy
小智 18
我认为两者都很好......我正在做一个同时使用两者的项目.首先,我使用scrapy废弃所有页面,并使用他们的管道将其保存在mongodb集合中,同时下载页面上存在的图像.之后,我使用BeautifulSoup4进行pos处理,我必须更改属性值并获得一些特殊标记.
如果你不知道你想要哪些页面产品,一个好的工具将是scrapy,因为你可以使用他们的爬虫来运行所有amazon/ebay网站寻找产品而不需要明确的循环.
看一下scrapy文档,它使用起来非常简单.
Scrapy 这是一个网页抓取框架,它带有大量的好东西,使抓取更容易,这样我们就可以只专注于抓取逻辑。下面是scrapy为我们提供的一些我最喜欢的东西。
设置代理、用户代理、标头等:scrapy 允许我们动态设置和旋转代理和其他标头。
项目管道:管道使我们能够在提取后处理数据。例如,我们可以配置管道将数据推送到您的 mysql 服务器。
Cookies:scrapy 会自动为我们处理 cookie。
等等。
TLDR:scrapy 是一个框架,它提供了构建大规模爬网可能需要的一切。它提供了各种隐藏网络爬行复杂性的功能。可以简单地开始编写网络爬虫,而不必担心设置负担。
Beautiful Soup Beautiful Soup 是一个用于解析 HTML 和 XML 文档的 Python 包。因此,使用 Beautiful Soup,您可以解析已下载的网页。BS4 非常流行和古老。与scrapy不同,你不能只用漂亮的汤来制作爬虫。您将需要其他库,如请求、urllib 等,以使用 bs4 制作爬虫。同样,这意味着您需要管理正在被抓取的 url 列表,被抓取,处理 cookie,管理代理,处理错误,创建您自己的函数以将数据推送到 CSV、JSON、XML 等。如果您想加快速度比您将不得不使用其他库,如multiprocessing。
总结。
Scrapy 是一个丰富的框架,您可以使用它轻松开始编写爬虫程序。
Beautiful Soup 是一个可以用来解析网页的库。它不能单独用于刮网。
你绝对应该为你的亚马逊和 e-bay 产品价格比较网站使用scrapy。您可以构建一个 url 数据库并每天运行爬虫(cron 作业,Celery 用于安排爬网)并更新数据库上的价格。这样您的网站将始终从数据库中提取,爬虫和数据库将充当单独的组件。
归档时间: |
|
查看次数: |
64090 次 |
最近记录: |