当前位置: 首页 > article >正文

python爬虫数据存进mysql数据库

一、安装mysql和mysql workbench

我已经在电脑上安装了最新的mysql8.2.0,配置好环境变量,在命令提示符中以管理员的身份初始化并成功启动mysql数据库。

前期因为以前的mysql没有卸载干净,导致mysql一直无法启动服务。所以一定要保证以前的mysql卸载干净才能重新安装,以前没有安装过的忽略。

二、记好mysql用户名、密码和端口号

三、连接pycharm和mysql数据库

安装pymysql:文件----设置----python解释器----“+”----搜索“pymysql”----安装

四、我这里是选择爬取迪丽热巴的微博名字,关注量和粉丝量为例。

import json
import requests
import time
import pymysql

def get_html(url):
    headers = {
        "User-Agent": "************************",  #开发者模式查询info?uid=1669879400就会出来user-agen
        "Referer": "https://weibo.com"
    }
    cookies = {
       "cookie": "你的微博cookie"
    }
    response = requests.get(url, headers=headers, cookies=cookies)
    time.sleep(3)   # 加上3s 的延时防止被反爬
    return response.text


def get_data(id):
    url1 = "https://weibo.com/ajax/profile/info?uid={}".format(id)
    html1 = get_html(url1)
    responses1 = json.loads(html1) #将json数据解析成python对象
    data1 = responses1['data']['user']
    data = {}   # 新建个字典用来存数据
    data['screen_name'] = data1['screen_name']  # 名字
    data['followers_count'] = data1['followers_count']  # 粉丝数量
    data['friends_count'] = data1['friends_count']  # 关注数量
    save_data(data)

# 连接到数据库
def save_data(data):
    conn = pymysql.connect(
        host='localhost',
        port=3306,   #mysql占用的端口号
        user='你的用户名',    #安装时关注自己的用户名
        password='**********',   #mysql服务登录密码,安装mysql时记得关注
        database='test1'   #在mysql中已经建立好的数据库名称
    )
    cursor = conn.cursor()   #创建游标
    sql = 'INSERT INTO Dear_dilireba(screen_name, followers_count, friends_count) VALUES (%s,%s,%s)'  #Dear_dilireba是数据表,第一个括号是表中字段,第二个括号是数据属性
    cursor.execute(sql, (data['screen_name'],data['followers_count'],data['friends_count']))


    # 关闭
    cursor.close()
    # 提交事务
    conn.commit()
    # 关闭数据库连接
    conn.close()
    print('插入操作成功!')


if __name__ == '__main__':
    uid = ['1669879400']
    for id in uid:
        get_data(id)

五、mysql数据库查询


http://www.kler.cn/news/366850.html

相关文章:

  • 模型 支付矩阵
  • [计算机网络]第一周
  • 3-petalinux2018.3 摸索记录 - 命令驱动 _ 交叉编译链
  • GeoWebCache1.26调用ArcGIS切片
  • smartctl硬盘检查工具
  • 有关spring,springboot项目的知识点
  • Mybatis-03.入门-配置SQL提示
  • qt 滚动条 美化
  • 基于SSM框架、传统文化学习系统的设计与实现
  • 什么是注意力机制?
  • 什么是 VolTE 中的 Slient Redial?它和 CSFB 什么关系?
  • git 如何获取当前分支的最新提交哈希值(Commit ID)
  • 005:PTGui全景拼接工具安装教程
  • 从零开始学PHP之函数
  • 多线程——线程的状态
  • vue-弹窗
  • Spring Boot论坛网站:微服务架构的实践
  • 使用 Spring Boot 实现图片上传
  • Python小白学习教程从入门到入坑------第十六课 函数进阶 [作用域、匿名函数](语法基础)
  • C++:继承(上篇)
  • Macos m系列芯片环境下安装python3以及mysqlclient流程以及遇到的一系列问题
  • Redis-05 Redis发布订阅
  • 2024年全球 MoonBit 编程创新赛-零基础早鸟教程-使用wasm4八小时开发井子棋小游戏
  • Android Activity 启动模式
  • 24年追觅科技入职北森测评笔试:商业推理40分钟28题真题汇总、网盘资料、资源下载
  • 【JavaSE】认识String类,了解,进阶到熟练掌握