BeautifulSoup和Scrapy爬虫之间的区别?

我想做一个网站,显示亚马逊和电子海湾产品价格之间的比较。 哪个更好,为什么? 我对BeautifulSoup有点熟悉,但与Scrapy爬虫不太一样

Scrapy是一个Web蜘蛛或Web抓取框架 ,您可以给Scrapy一个根URL以开始抓取,然后您可以指定要抓取和抓取的URL数量的限制等。 这是一个完整的网页抓取或抓取框架。

BeautifulSoup是一个parsing库 ,它也可以很好地从URL中获取内容,并且可以毫不费力地parsing它们的某些部分。 它只提取你给的URL的内容然后停止。 它不会爬行,除非您手动将其放入具有特定条件的无限循环中。

简而言之,用美丽的汤,你可以build立类似于Scrapy的东西。 美丽的汤是一个图书馆,而Scrapy是一个完整的框架

来源: http : //www.quora.com/Python-programming-language-1/How-is-BeautifulSoup-different-from-Scrapy

我认为两者都是好的…即时做一个项目,使用两个。 首先,我使用scrapy将所有页面剪下,并使用pipe道将其保存在mongodb集合中,同时下载页面上存在的图像。 之后,我使用BeautifulSoup4进行pos处理,我必须更改属性值并获取一些特殊的标记。

如果你不知道你想要哪个页面的产品,一个好的工具将是scrapy,因为你可以使用他们的爬虫来运行所有的亚马逊/易趣网站寻找产品,而不是明确的循环。

看看scrapy文档,使用起来非常简单。

祝你好运!

我这样做的方式是使用eBay / Amazon API而不是scrapy,然后使用BeautifulSoupparsing结果。

这些API为您提供了一种正式的方式来获取您从scrapy抓取工具获得的相同数据,无需担心隐藏您的身份,与代理混淆等等。

两者都用于parsing数据。

Scrapy

  • Scrapy是一个快速的高级networking抓取和网页抓取框架,用于抓取网站并从网页中提取结构化数据。
  • 但是当数据来自Java脚本或加载dynamic时,它有一些限制,我们可以通过使用包如飞溅,selenium等来得到它。

BeautifulSoup

  • 美丽的汤是一个用于从HTML和XML文件中提取数据的Python库。

  • 我们可以使用这个包从java脚本获取数据或dynamic加载页面。

Scrapy与BeautifulSoup是我们可以合作拼凑静态和dynamic内容的最佳组合之一