网页搜索帮助

时间:2014-06-08 04:40:56

标签: python web-scraping scrapy

我是一个完整的新手。没有计算机编程经验。因此,学习任何东西的机会成本 - 比如Scrapy - 非常高,所以我不想花费数小时做死胡同( ex。 我整天都在安装Scrapy,因为我是个白痴)。

我的研究涉及从慈善组织的数据库中收集数据(http://www.charitynavigator.org/)。基本上,我的程序需要能够查看连接到慈善机构“情况说明书”的链接列表;然后,程序需要提取所需的数据,并对该数据进行分类。

我的主要技术问题是 像Scrapy这样的程序可以识别一个术语(资产)旁边的数字(100,000)意味着该慈善机构拥有100,000美元的资产。或者至少将100,000个置于资产类别之下?

为这个问题的微不足道的性质道歉。我很累。

1 个答案:

答案 0 :(得分:0)

回答你的问题:

  

我的主要技术问题是,像Scrapy这样的程序可以识别一个术语(资产)旁边的数字(100,000)意味着该慈善机构拥有100,000美元的资产。或者至少将100,000个置于资产类别之下?

是的,它可以。我简要地看了一下那个网站,看起来好像不太糟糕。财务数据似乎都采取以下形式:

      <tr>
        <td>&nbsp;&nbsp;&nbsp;Contributions, Gifts &amp; Grants</td>
        <td align="right">$186,659,755</td>
      </tr>

如您所见,所有财务数字都与描述它们的元素配对。话虽这么说,编写这样一个刮刀(特别是使用Scrapy)对于没有编程经验的人来说很难。

假设您重视自己的时间,那么您最好只需手动将数字复制+粘贴到Excel电子表格中或付给其他人这样做。您可能还希望考虑付钱给某人为您编写刮刀。

Scrapy是惊人的并且使许多事情变得更容易,但是非程序员学习只写一个刮刀有很多认知过载。特别是考虑到你不会充分利用Scrapy增加的功能,而只是从头开始写东西。如果你决定走这条路线,我建议使用lxml从页面中提取你想要的数据。

我建议您首先Learn Python,然后learn about generators。 (它们在整个Scrapy中被广泛使用)完成这两项工作后,请完成Official Scrapy Tutorial