假设我看到以下的Tumblr帖子:http://ronbarak.tumblr.com/post/40692813…
它(目前)有292个注释。
我想使用Python脚本(例如,通过urllib2、BeautifulSoup、simplejson或tumblr Api)获取所有上面的注释。 一些广泛的Google搜索没有产生任何与在Tumblr中提取注释相关的项目。
有人可以指点我使用哪种工具来实现这个目标吗?
假设我看到以下的Tumblr帖子:http://ronbarak.tumblr.com/post/40692813…
它(目前)有292个注释。
我想使用Python脚本(例如,通过urllib2、BeautifulSoup、simplejson或tumblr Api)获取所有上面的注释。 一些广泛的Google搜索没有产生任何与在Tumblr中提取注释相关的项目。
有人可以指点我使用哪种工具来实现这个目标吗?
来源:"在访问或使用服务时,您不得执行以下任何操作:(...)从服务中抓取内容(如下所定义),尤其是抓取内容,未经Tumblr的明确书面同意;"
https://groups.google.com/forum/?fromgroups=#!topic/tumblr-api/ktfMIdJCOmc
以下页面在底部链接,例如:
a
的onclick
属性中找到下一个URL)现在,你可以使用各种工具来下载/解析数据。以下wget命令应下载该帖子的所有笔记页面:wget --recursive --domains=ronbarak.tumblr.com --include-directories=notes http://ronbarak.tumblr.com/notes/40692813320/4Y70Zzacy
正如Fabio所暗示的那样,最好使用API。
如果由于某种原因您无法使用API,则所使用的工具将取决于您希望对帖子中的数据执行什么操作。
Tumblr的URL方案很简单:url/scheme/1、url/scheme/2、url/scheme/3等,直到您到达帖子的末尾,服务器就不再返回任何数据了。
因此,如果您要通过蛮力方式进行爬取,您可以轻松地告诉您的脚本将所有数据转储到硬盘上,直到例如内容标记为空为止。
最后一个建议,请记得在您的脚本中添加一个小的sleep(1000),因为您可能会在Tumblr服务器上施加一些压力。