python数据爬取与分析可视化⽅法_python爬取以及数据可视
化分析数据情况
京东python入门教程>aspect的名词形式#所涉及到的是requests和openpyxl数据的存储和数据的清洗以及统计然后就是matplotlib进⾏数据的可视化
#静态数据点击element中点击发现在html中,服务器已经渲染好的内容,直接发给浏览器,浏览器解释执⾏,
#动态数据:如果点击下⼀页。我们的地址栏(加后缀但是前⾯的地址栏没变也算)(也可以点击2和3页)没有发⽣任何变化说明是动态数据,说明我们的数据是后来被渲染到html中的。他的数据根本不在html中的。
#动态查看network然后⽤的url是network⾥⾯的headers
#安装第三⽅模块输⼊cmd之后pip install 加名字例如requests
import requests
import re
报表软件
import time
import json
import openpyxl #⽤于操作 excel⽂件的
headers= {'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/74.0.3729.131 Safari/537.36'}#创建头部信息
def get_comments(productId,page):
edb文件用什么打开url= "club.jd/comment/productPageComments.action?callback=fetchJSON_comment98&productId=
{0}&score=0&sortType=5&page={1}&pageSize=10&isShadowSku=0&fold=1".format(productId,page)
resp= (url, headers=headers)
eplace('fetchJSON_comment98(','')#进⾏替换操作。获取到所需要的相应的json,也就是
去掉前后没⽤的东西
place(');','')
json_data=json.loads(s)#进⾏数据json转换returnjson_data
#获取最⼤页数
def get_max_page(productId):
dis_data=get_comments(productId,0)#调⽤刚才写的函数进⾏向服务器的访问请求,获取字典数据return dis_data['maxPage']#获取他的最⼤页数。每⼀页都有最⼤页数
#进⾏数据提取
def get_info(productId):
max_page=get_max_page(productId)
lst=[]#⽤于存储提取到的商品数据for page in range(1,max_page+1):
#获取没页的商品评论
procure是什么意思comments=get_comments(productId,page)
comm_list=comments['comments']#根据comnents获取到评论的列表(每页有10条评论)
#遍历评论列表,获取其中的相应的数据for item incomm_list:
#每条评论分别是⼀字典。在继续通过key来获取值
content=item['content']
color=item['productColor']
size=item['productSize']
lst.append([content,color,size])#将每条评论添加到列表当中
time.sleep(3)#防⽌被京东封ip进⾏⼀个时间延迟。防⽌访问次数太频繁save(lst)
def save(lst):
#把爬取到的数据进⾏存储,保存到excel中
wk=openpyxl.Workbook()#⽤于创建⼯作簿对象
sheet=wk.active #获取活动表(⼀个⼯作簿有三个表)
颜代码生成器在线#遍历列表将数据添加到excel中。列表中的⼀条数据在表中是⼀⾏biaotou='评论','颜⾊','⼤⼩'sheet.append(biaotou)for item inlst: sheet.append(item)
#将excel保存到磁盘上
wk.save('销售数据.xlsx')if __name__=='__main__':
productId='66749071789'get_info(productId)
print("ok")
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论