weibo-search
weibo-search copied to clipboard
点赞数抓取一直为零
设置就是初始设定, 抓取的点赞数量所有的都为零, 请问和最近的fix相关吗?
没关,因为大部分微博点赞就是0,如果你获取的是热门微博,应该能看到点赞数。
没关,因为大部分微博点赞就是0,如果你获取的是热门微博,应该能看到点赞数。
但是我人工搜索会发现,那个点赞数是在那儿的
是最新的程序吗?之前有点赞问题 #109 ,后来解决了。
是最新的程序吗?之前有点赞问题 #109 ,后来解决了。
谢谢引索到这个issue,我和ta的问题是一样的,我用的是master版本的程序,我本来也想尝试和ta一样去debug一下,发现有点难单独测试(或者直接整体测试看变量输出),请问有什么这方面的教程吗或者小提示 :)
你可以搜索scrapy的教程。或设置只获取热门微博,看看有点赞数吗。
你可以搜索scrapy的教程。或设置只获取热门微博,看看有点赞数吗。
谢谢! 我觉得我好像解决了这个问题。
原来用来定位"评论"和“点赞”的代码位置是:search.py
comments_count = sel.xpath('.//a[@action-type="feed_list_comment"]/text()').extract_first()
attitudes_count = sel.xpath('.//span[@class="woo-like-count"]/text()').extract_first()
评论是可以的,但是点赞不行,点赞部分修改为:
attitudes_count = sel.xpath('.//a//em/text()').extract_first()
debug的方法:
在attitudes_count 部分插入(https://docs.scrapy.org/en/latest/topics/shell.html#topics-shell-inspect-response)
from scrapy.shell import inspect_response
inspect_response(response, self)
在shell测试
In [2]: sel.xpath('.//a[@action-type="feed_list_comment"]/text()')
Out[2]: [<Selector xpath='.//a[@action-type="feed_list_comment"]/text()' data='评论 282'>]
In [4]: sel.xpath('.//a[@action-type="feed_list_like"]/text()')
Out[4]: [<Selector xpath='.//a[@action-type="feed_list_like"]/text()' data=' '>]
如果inspect weibo网站的话,是这样的:
会发现点赞的属性和转发评论不一样
如果用这个
In [16]: sel.xpath('.//a//em/text()').extract_first()
Out[16]: '323'
感谢建议。我现在没法调试,如果您确定“现在的代码能无法获取点赞数,您的代码可以”,您可以pull request的方式提交代码,这样不但可以帮助更多的人,您还可以成为本程序的contributor。因为我现在不能测试,可能要过一段时间才能merge。这只是建议,如果您不方便,不提交代码也可以,感谢您的热心反馈和建议。
你可以搜索scrapy的教程。或设置只获取热门微博,看看有点赞数吗。
谢谢! 我觉得我好像解决了这个问题。
原来用来定位"评论"和“点赞”的代码位置是:search.py
comments_count = sel.xpath('.//a[@action-type="feed_list_comment"]/text()').extract_first() attitudes_count = sel.xpath('.//span[@class="woo-like-count"]/text()').extract_first()
评论是可以的,但是点赞不行,点赞部分修改为:
attitudes_count = sel.xpath('.//a//em/text()').extract_first()
debug的方法:
在attitudes_count 部分插入(https://docs.scrapy.org/en/latest/topics/shell.html#topics-shell-inspect-response)
from scrapy.shell import inspect_response inspect_response(response, self)
在shell测试
In [2]: sel.xpath('.//a[@action-type="feed_list_comment"]/text()') Out[2]: [<Selector xpath='.//a[@action-type="feed_list_comment"]/text()' data='评论 282'>]
In [4]: sel.xpath('.//a[@action-type="feed_list_like"]/text()') Out[4]: [<Selector xpath='.//a[@action-type="feed_list_like"]/text()' data=' '>]
如果inspect weibo网站的话,是这样的:
会发现点赞的属性和转发评论不一样 如果用这个
In [16]: sel.xpath('.//a//em/text()').extract_first() Out[16]: '323'
你好,似乎weibo又改版了,现在使用原来的代码可以抓取赞数,修改后的代码反而不行了