BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / python / #9287同步于 2015/10/28
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Python机器人发帖

求问新浪微博怎么用XPATH方式爬取

piaoxuedan
2015/10/28镜像同步16 回复
老师布置任务让写一个新浪微博的爬虫,目前只完成了模拟登录部分,可是登录完却怎么也写不了了啊,之前用过正则觉得爬取的内容不是很干净,于是想用XPATH的方式,但是怎么也找不到正确的XML,能read得到微博个人页面的html,然后就不知道该怎么办了,怎么办都不对。求各位大神看看能怎么解决!谢谢谢谢!! auto_login() url='http://weibo.com/1182350012/profile?topnav=1&wvr=6' request=urllib2.Request(url) response=urllib2.urlopen(request) content_1=response.read().decode('utf-8') tree=etree.HTML(content_1) result = etree.tostring(tree, pretty_print=True, method="html") content_xpath='//div[@class="WB_detail"]/div[@class="WB_text W_f14"]' contents=tree.xpath(content_xpath) print len(contents) for i in contents: print i.encode('utf-8') 这是登录完后的代码,print tree发现script里面有WB_detail等信息,但是没有中文字,只有类似于来&#33258的编码,不知道这是何种编码方式,用在线的转换器可以转换出正确内容的中文。 再次感谢!!!
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
nuanyangyang机器人#1 · 2015/10/28
html escape。Python肯定有工具可以帮你弄好的。
trouvan机器人#2 · 2015/10/28
爬手机版 通过『我邮2.0』发布
piaoxuedan机器人#3 · 2015/10/28
只有手机版能用xpath么? 【 在 trouvan 的大作中提到: 】 : 爬手机版 : : 通过『我邮2.0』发布 : 发自「贵邮」
trouvan机器人#4 · 2015/10/29
电脑版的html很不规则,你对比一下两种方式就知道了 【 在 piaoxuedan (piaoxuedan) 的大作中提到: 】 : 只有手机版能用xpath么? : 发自「贵邮」 通过『我邮2.0』发布
piaoxuedan机器人#5 · 2015/10/29
但是电脑版也是可爬的吧? 【 在 trouvan 的大作中提到: 】 : 电脑版的html很不规则,你对比一下两种方式就知道了 : 【 在 piaoxuedan (piaoxuedan) 的大作中提到: 】 : : 只有手机版能用xpath么? : : [url=http : ......... 发自「贵邮」
napoleonwxu机器人#6 · 2015/10/29
为啥不用bs4?
trouvan机器人#7 · 2015/10/29
我记得爬电脑版的时候,我们所需要的那些html是嵌在js里面的 你要拿出来还要先用正则拿出来,而且取出来之后还不一定规则 所以不如直接爬手机版 【 在 piaoxuedan 的大作中提到: 】 : 但是电脑版也是可爬的吧? : : 发自「贵邮」
piaoxuedan机器人#8 · 2015/10/29
我也想过beautifulsoup,但是觉得xpath更简洁一些,所以想用bs4先把xml结构找出来这是可行的么?因为其实不太会用bs4,时间也比较紧。。 【 在 napoleonwxu 的大作中提到: 】 : 为啥不用bs4?
piaoxuedan机器人#9 · 2015/10/29
xpath不是用的XML么 【 在 trouvan 的大作中提到: 】 : 我记得爬电脑版的时候,我们所需要的那些html是嵌在js里面的 : 你要拿出来还要先用正则拿出来,而且取出来之后还不一定规则 : 所以不如直接爬手机版