鱼C论坛

 找回密码
 立即注册
查看: 1261|回复: 4

爬取酷我音乐的评论和回复评论

[复制链接]
发表于 2018-4-24 16:38:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 fan1993423 于 2018-4-24 16:42 编辑
  1. import re,os,requests,json
  2. from bs4 import BeautifulSoup
  3. def openurl():
  4.     head={'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36'
  5.                        ' (KHTML, like Gecko) Chrome/47.0.2526.108 Safari/537.36 '
  6.                        '2345Explorer/8.8.3.16721',
  7.           'Referer':'http:// www.kuwo.cn / yinyue / 5899379?catalog = yueku2016'
  8.     }
  9.     a=''
  10.     b=''

  11.     for i in range(1,22):
  12.         r='http://comment.kuwo.cn/com.s?type=get_comment&uid=0&prod=newWeb&digest=15&sid=5899379&page=%d&rows=20&' \
  13.           'f=web&gid=46fff5dd-5782-4eed-bc64-ddc5ed74d485&jpcallback=getCommentListFn&_=1524552505471'%i
  14.         t=requests.get(r,headers=head).text
  15.         res=re.search(r'try{var jsondata=({.+});',t).group(1)
  16.         res=json.loads(res)
  17.         html=res['rows']
  18.         for each in html:
  19.             if 'reply' not in each:
  20.                 a+=each['msg']+'\n'
  21.             else:
  22.                 b+=each['reply']['msg']+'\n'
  23.     print('\033[1;31m评论:'+'\n'+a+'\033[1;34m回复评论:'+'\n'+b)
  24. def main():
  25.     res=openurl()
  26. if __name__=='__main__':
  27.     main()
复制代码

爬取酷我音乐《美丽的神话》成龙版的评论和回复评论,我这个代码有三个问题,第一是我用‘’reply‘’这个键在不在字典each中来分开评论还是回复评论(如果不用这个if会直接报错,因为一页中评论都有,但是回复评论不全有),但是这造成了一个问题就是有回复评论的评论就没打印出来,第二是这个没有一一对应,就是一个评论如果有回复评论就马上在这个评论后面打印这个回复评论,第三是u_name好像被服务器隐藏了,所以大佬们就这几个问题求改进,求代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2018-4-24 20:40:44 | 显示全部楼层
自顶
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2018-4-25 12:48:06 From FishC Mobile | 显示全部楼层
自顶,求人帮忙
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-4-25 19:03:31 | 显示全部楼层
这是个思路问题吧
你将评论与回复在判断之前先放入一个列表,下完结论后再一口气输出
然后再接一个判断。这样,不是就可以么了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-4-25 20:38:44 | 显示全部楼层
BlueSand 发表于 2018-4-25 19:03
这是个思路问题吧
你将评论与回复在判断之前先放入一个列表,下完结论后再一口气输出
然后再接一个判断。 ...

大佬,你能不能写下你的代码?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-3-28 18:17

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表