1 """
2 https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98&productId=100006852812&score=0&sortType=5&page=0&pageSize=10&isShadowSku=0&fold=1
3 page=0&pageSize=10
4 """
5 import json
6 from datetime import time
7 from random import randint
8
9 import pymysql
10 import requests
11 #连接数据库 获取游标
12 def get_conn():
13 """
14 :return: 连接,游标
15 """
16 # 创建连接
17 conn = pymysql.connect(host="127.0.0.1",
18 user="root",
19 password="000429",
20 db="info",
21 charset="utf8")
22 # 创建游标
23 cursor = conn.cursor() # 执行完毕返回的结果集默认以元组显示
24 if ((conn != None) & (cursor != None)):
25 print("数据库连接成功!游标创建成功!")
26 else:
27 print("数据库连接失败!")
28 return conn, cursor
29 #关闭数据库连接和游标
30 def close_conn(conn, cursor):
31 if cursor:
32 cursor.close()
33 if conn:
34 conn.close()
35 return 1
36
37 def jd_spider():
38 headers = {
39 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.51 Safari/537.36'
40 }
41 res_data = [] #最终返回的数据
42 temp_data=[] #中间数据
43 for page_num in range(6,50):
44 url=f'https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98&productId=100006852812&score=0&sortType=5&page={page_num}&pageSize=1&isShadowSku=0&fold=1'
45 # 发起请求
46 response = requests.get(url, headers=headers)
47 response.encoding='GBK'
48 # 获取响应
49 res_text = response.text
50 # print(res_text)
51 new_res_text=res_text[20:-2]
52 # print(new_res_text)
53 res_json=json.loads(new_res_text)
54 # print(type(res_json)) #<class 'dict'>
55 comments=res_json['comments']
56 # print(comments[0])
57 comments_dict=comments[0]
58 # print(comments_dict.keys())
59 temp_data.append(comments_dict['id'])
60 temp_data.append(comments_dict['content'])
61 temp_data.append(comments_dict['creationTime'])
62 temp_data.append(comments_dict['referenceTime'])
63 temp_data.append(comments_dict['days'])
64 flag_isMobile=randint(0,1)
65 flag_userLevel=randint(0,1)
66 temp_data.append(flag_isMobile)
67 temp_data.append(flag_userLevel)
68 res_data.append(temp_data)
69 print(str(page_num),temp_data)
70 insert_jd(res_data)
71 temp_data=[]
72 res_data=[]
73 return
74
75 #插入
76 def insert_jd(data):
77 """
78 插入imdb数据
79 :return:
80 """
81 cursor = None
82 conn = None
83 try:
84 # list_=[]
85 # list = jd_spider()
86 # if(type(list)!=type(list_)):
87 # return -1
88 conn, cursor = get_conn()
89 sql = "insert into jd_comments(id,content,creationTime,referenceTime,days,flag_isMobile,flag_userLevel) values(%s,%s,%s,%s,%s,%s,%s)"
90 for item in data:
91 try:
92 print(item)
93 cursor.execute(sql, [item[0], item[1], item[2], item[3], item[4], item[5], item[6]])
94 except pymysql.err.IntegrityError:
95 print("出现错误!")
96 conn.commit() # 提交事务 update delete insert操作
97 finally:
98 close_conn(conn, cursor)
99 return
100
101 if __name__ == '__main__':
102 jd_spider()

id, 评论id

content,  评论

creationTime,  评论时间

referenceTime,  确认收货时间

days,  评论时间距【收货/下单】时间多长时间

isMobile(0 1) ,  是否移动端(0 PC端,1 移动端)

userLevel(0 1)    用户等级(1会员,0非会员)

Python爬虫爬取京东某商品评论信息存入mysql数据库的更多相关文章

  1. python爬虫爬取京东、淘宝、苏宁上华为P20购买评论

    爬虫爬取京东.淘宝.苏宁上华为P20购买评论 1.使用软件 Anaconda3 2.代码截图 三个网站代码大同小异,因此只展示一个 3.结果(部分) 京东 淘宝 苏宁 4.分析 这三个网站上的评论数据 ...

  2. Python爬虫-爬取京东商品信息-按给定关键词

    目的:按给定关键词爬取京东商品信息,并保存至mongodb. 字段:title.url.store.store_url.item_id.price.comments_count.comments 工具 ...

  3. JS+Selenium+excel追加写入,使用python成功爬取京东任何商品~

    之前一直是requests库做爬虫,这次尝试下使用selenium做爬虫,效率不高,但是却没有限制,文章是分别结合大牛的selenium爬虫以及excel追加写入操作而成,还有待优化,打算爬取更多信息 ...

  4. Python爬虫抓取东方财富网股票数据并实现MySQL数据库存储

    Python爬虫可以说是好玩又好用了.现想利用Python爬取网页股票数据保存到本地csv数据文件中,同时想把股票数据保存到MySQL数据库中.需求有了,剩下的就是实现了. 在开始之前,保证已经安装好 ...

  5. 毕设二:python 爬取京东的商品评论

    # -*- coding: utf-8 -*- # @author: Tele # @Time : 2019/04/14 下午 3:48 # 多线程版 import time import reque ...

  6. 利用Python爬虫爬取淘宝商品做数据挖掘分析实战篇,超详细教程

    项目内容 本案例选择>> 商品类目:沙发: 数量:共100页  4400个商品: 筛选条件:天猫.销量从高到低.价格500元以上. 项目目的 1. 对商品标题进行文本分析 词云可视化 2. ...

  7. Python 爬虫-爬取京东手机页面的图片

    具体代码如下: __author__ = 'Fred Zhao' import requests from bs4 import BeautifulSoup import os from urllib ...

  8. <爬虫>利用BeautifulSoup爬取百度百科虚拟人物资料存入Mysql数据库

    网页情况: 代码: import requests from requests.exceptions import RequestException from bs4 import Beautiful ...

  9. python 爬虫爬取历年双色球开奖信息

    目前写的这些爬虫都是些静态网页,对于一些高级网页(像经过JS渲染过的页面),目前技术并不能解决,自己也是在慢慢学习过程中,如有错误,欢迎指正: 对面前端知识本人并不懂,过程中如果涉及到前端知识,也是百 ...

  10. python制作爬虫爬取京东商品评论教程

    作者:蓝鲸 类型:转载 本文是继前2篇Python爬虫系列文章的后续篇,给大家介绍的是如何使用Python爬取京东商品评论信息的方法,并根据数据绘制成各种统计图表,非常的细致,有需要的小伙伴可以参考下 ...

随机推荐

  1. Python之正则表达式匹配电话号码和邮箱

    代码 #! python3 # phoneAndEmail.py - Finds phone numbers and email addresses on Clipboard import pyper ...

  2. SpringBoot整合Swagger2实现接口文档

    展示一下 访问方式一 访问地址:http://localhost:8080/swagger-ui.html#/ 首页 详情页 访问方式二 访问地址:http://localhost:8080/doc. ...

  3. std::async 与 std::thread 在什么时候使用比较合适

    前提: C++ 11 中提供了多线程的标准库,提供了管理线程.保护共享数据.线程间同步操作.原子操作等类.多线程库对应的头文件是 #include <thread>,类名为 std::th ...

  4. 机器学习策略篇:详解满足和优化指标(Satisficing and optimizing metrics)

    满足和优化指标 要把顾及到的所有事情组合成单实数评估指标有时并不容易,在那些情况里,发现有时候设立满足和优化指标是很重要的,让我告诉是什么意思吧. 假设已经决定很看重猫分类器的分类准确度,这可以是\( ...

  5. 【Azure 环境】使用az login登录遇见OSError: [WinError -2146893813] : '' 错误

    问题描述 使用 az login指令登录,遇见 OS Error: [WinError -2146893813] : '', 在指令中添加 --debug后,输出的错误消息为: urllib3.con ...

  6. 2024年,提升Windows开发和使用体验实践 - 小工具篇

    前言 本来是一篇文章的,不知不觉写成了系列. 其实开工那几天就已经写好了长文,这几天一忙就没连着发了. 本文介绍一些 Windows 上用的小工具. 美化/折腾/小工具 虽然这是在用 Windows ...

  7. vmware完全卸载 防止出现各种问题治标不治本

    首先打开系统盘根目录,搜索" VMware ",把搜到的都删掉,去控制面板那里卸载掉VMware 打开管理(右键"我的电脑"),管理打开设备管理器," ...

  8. Git 常用的基础命令

    #克隆项目到本地.url:项目的git地址:local_dir_name:克隆项目到本地的目录名称,如果不写就默认是git项目中的目录名称 git clone <url> <loca ...

  9. CSAPP:lab7 shell

    实验网站 课程网站:CSAPP 源码下载 源码下载 实验文档下载 我的实验环境:Ubuntu 20.04 lab7文档解读 ​ 查看 tsh.c (tiny shell) 文件,您会看到它包含一个简单 ...

  10. Kubernetes-一文详解ServiceAccount与RBAC权限控制

    一.ServiceAccount 1.ServiceAccount 介绍 首先Kubernetes中账户区分为:User Accounts(用户账户) 和 Service Accounts(服务账户) ...