说我看下面的Tumblr帖子:http://ronbarak.tumblr.com/post/40692813…
它(目前)有292个音符。
我想使用Python脚本(例如,通过urllib2,BeautifulSoup,simplejson或tumblr Api)获得所有上述注释。 一些广泛的谷歌搜索没有产生任何与Tumblr中的笔记提取相关的项目。
任何人都可以指出我在哪个工具上让我这样做的正确方向?
答案 0 :(得分:7)
不幸的是,看起来Tumblr API有一些限制(缺少关于Reblogs的元信息,注释限制为50),所以你无法获得所有笔记。
禁止根据Terms of Service进行页面抓取。
“访问或使用服务时,您不得执行以下任何操作:( ......)在未经Tumblr事先书面同意的情况下,从服务中删除服务,特别是抓取内容(定义如下);”< / p>
来源:
https://groups.google.com/forum/?fromgroups=#!topic/tumblr-api/ktfMIdJCOmc
答案 1 :(得分:5)
如果没有JS,您将获得仅包含注释的单独页面。对于上述博客文章,第一页将是:
以下页面链接在底部,例如:
(请参阅a
的{{1}}属性中的my answer on how to find the next URL。)
现在您可以使用各种工具下载/解析数据。
以下wget命令应该下载该帖子的所有备注页面:
onclick
答案 2 :(得分:3)
就像法比奥所暗示的那样,最好使用API。
如果出于任何原因你不能,那么你将使用的工具将取决于你想要对帖子中的数据做什么。
Tumblr url方案很简单:url / scheme / 1,url / scheme / 2,url / scheme / 3等等......直到你到达帖子的末尾并且服务器不再返回任何数据
因此,如果您要以强制方式进行抓取,您可以轻松地告诉您的脚本将所有数据转储到您的硬盘上,直到内容标记为空。
最后一句忠告,请记住在你的脚本中放一个小睡眠(1000),因为你可能会对Tumblr服务器施加一些压力。
答案 3 :(得分:0)
how to load all notes on tumblr? 也涵盖了这个主题,但是英国的回复(上图)做得非常好。