我是一个完整的新手。没有计算机编程经验。因此,学习任何东西的机会成本 - 比如Scrapy - 非常高,所以我不想花费数小时做死胡同( ex。 我整天都在安装Scrapy,因为我是个白痴)。
我的研究涉及从慈善组织的数据库中收集数据(http://www.charitynavigator.org/)。基本上,我的程序需要能够查看连接到慈善机构“情况说明书”的链接列表;然后,程序需要提取所需的数据,并对该数据进行分类。
我的主要技术问题是 像Scrapy这样的程序可以识别一个术语(资产)旁边的数字(100,000)意味着该慈善机构拥有100,000美元的资产。或者至少将100,000个置于资产类别之下?
为这个问题的微不足道的性质道歉。我很累。
答案 0 :(得分:0)
回答你的问题:
我的主要技术问题是,像Scrapy这样的程序可以识别一个术语(资产)旁边的数字(100,000)意味着该慈善机构拥有100,000美元的资产。或者至少将100,000个置于资产类别之下?
是的,它可以。我简要地看了一下那个网站,看起来好像不太糟糕。财务数据似乎都采取以下形式:
<tr>
<td> Contributions, Gifts & Grants</td>
<td align="right">$186,659,755</td>
</tr>
如您所见,所有财务数字都与描述它们的元素配对。话虽这么说,编写这样一个刮刀(特别是使用Scrapy)对于没有编程经验的人来说很难。
假设您重视自己的时间,那么您最好只需手动将数字复制+粘贴到Excel电子表格中或付给其他人这样做。您可能还希望考虑付钱给某人为您编写刮刀。
Scrapy是惊人的并且使许多事情变得更容易,但是非程序员学习只写一个刮刀有很多认知过载。特别是考虑到你不会充分利用Scrapy增加的功能,而只是从头开始写东西。如果你做决定走这条路线,我建议使用lxml
从页面中提取你想要的数据。
我建议您首先Learn Python,然后learn about generators。 (它们在整个Scrapy中被广泛使用)完成这两项工作后,请完成Official Scrapy Tutorial。