首页 百科正文

爬取SCU-info玻璃杯事件,提取热门100条神回复

admin 百科 2022-10-11 18:13:16 601 0

!usr/bin/env python -*-coding:utf-8 -*- __author__=Charles __date__=2018.03.16 import requests import json import re import time class Spider(): 初始化,记录采集时间 def __init__(self): self.time=time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) print u\n,u开始采集数据,u\n本地时间:,self.time 获取data def getData(self,url): html=requests.get(url).text requests.adapters.DEFAULT_RETRIES=5 result=json.loads(html) data=result[data] return data 获取最新的评论id def getNew(self): data=self.getData(url=http://www.scuinfo.com/api/posts?pageSize=15) New=data[0][id] return New 提取data中有效数据,写入一个dict,多项写入一个list def getDetail(self): New=self.getNew() container=[] i=1 for id in range(131599,New+1): content={} self.url=http://www.scuinfo.com/api/post?id=+str(id) data=self.getData(url=self.url) if not isinstance(data,list): body=data.values()[7] likeCount=data.values()[6] comment=data.values()[0] 关键词分别为玻璃、杯、摔、观光 pattern=re.compile(u\u73bb\u7483|\u676f|\u6454|\u89c2\u5149,re.S) items=re.search(pattern,body) if items: content[body]=body content[like]=likeCount content[comment]=comment print u\n, i, u\n, u发言:, body, u\n, u点赞:, likeCount, u, u评论:, comment time.sleep(0.01) i += 1 container.append(content) else: print None print u\n\n, u至, self.time, u为止,info上关于玻璃杯事件,共有评论,i-1, u条 return container 获取评论总数 依据点赞数由大到小将评论排列,获取前100条热门评论 def getSort(self): container=self.getDetail() print u\n,u将人气更高的前100条打印如下: container.sort(key=lambda k:k.get(comment,0)) container.sort(key=lambda k:k.get(like,0),reverse=True) for index,r in enumerate(container): print u\n\n序号:,index+1, u\n发言:,r[body],u\n点赞: ,r[like],u评论,r[comment] spider=Spider() spider.getSort()

健康食品 产品推荐 洗护测评 知识科普

版权声明 1、本网站名称:三九知识
2、本站永久网址:www.1puu.com
3、本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任
4、如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 aaw4008@foxmail.com 网站右下角【投诉删除】可进入实时客服
5、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
本文链接:http://1puu.com/post/265.html