我想抓取这张 map 下面的选民登记数据:
http://www.bostonglobe.com/metro/2012/08/28/registration-figures-show-massachusetts-voters-continue-abandon-two-major-political-parties/p0zW7Snj9R07DK913P36kM/igraphic.html?p1=Article_Graphic
当您将鼠标悬停在每个城镇上时,下面框中的总数和按党派数字都会发生变化。我想按党记录每个城镇的名称和注册人数。关于如何做到这一点的任何建议都会非常有帮助。我过去做过一些抓取,但没有像这样的任何交互式内容,而且我对各种 python 包的最初几次尝试都没有奏效。
(不幸的是,底部的来源链接没有用,因为它只是链接到国务卿的主页,原始数据报告不再可用)
最佳答案
不需要构建一个应用程序来抓取这个,我只是看了 5 分钟的页面源,看看这个:
http://www.bostonglobe.com/r/Boston/2011-2020/WebGraphics/Metro/BostonGlobe.com/2012/08/voter/voter-regs.js
否则
您需要拥有一种具有 javascript 引擎的技术,例如 phantomjs 或 firefox/chrome 驱动程序。
如果你想坚持使用 python,Selenium webdriver 是你要走的路。
http://www.seleniumhq.org/projects/webdriver/
关于python - 从交互式 map 中抓取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30533850/