请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

学习爬微博网站遇到的问题,请求解答,谢谢

爬取微博网站 个人信息,关注数、粉丝数和微博,三个指标;

css语句:response.css(".WB_main_r  .user_atten li::text").extract(),  返回的结果一直是空列表 [ ]。

下面是网页截图

https://img1.sycdn.imooc.com//szimg/5b45fc500001ac9113470617.jpg

下图是右键查看源码的代码,与上图中代码不一样。这样的情况下,是以源码为准来css定位爬取吗?

https://img1.sycdn.imooc.com//szimg/5b45fcd2000185dd12880589.jpg

这里的代码基本都在</script>标签内。例如代码结构下

<script>FM.view({"pid":"plc_frame","js":["home\/js\/pl\/lib.js?version=b1d20fbbbb3d0864"],"jsDefer":true});</script><div id="pl_common_webim"></div>

对于<script>FM.view()这样的代码如何css定位爬取?

另外,能够帮忙给出爬取 关注数、粉丝数和微博三个指标的css语句,十分谢谢!!!


正在回答

2回答

bobby 2018-07-16 18:15:32
from scrapy.selector import Selector
body = '<html><body><span>good</span></body></html>'
sel = Selector(text=body)
data = sel.css('XXXX')

这样写

0 回复 有任何疑惑可以回复我~
bobby 2018-07-13 11:24:25

script中的脚本是无法通过css方式来为你定位的,所以你可以通过正则表达式获取到这里的html源码 然后传给selector初始化 然后就可以用css方式获取了

0 回复 有任何疑惑可以回复我~
  • 提问者 慕莱坞7202075 #1
    老师,传给selector初始化然后再进行css方式定位获取,不太明白。能否取个栗子
    回复 有任何疑惑可以回复我~ 2018-07-15 00:28:06
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信