python 写数据库

import pymysql
import requests
from lxml import etree


class Douban:

    def __init__(self):
        self.db = pymysql.connect("127.0.0.1", "root", "1111", "douban")
        self.cursor = self.db.cursor()

    def forRequest(self):
        start = 0
        while start <= 225:
            requestUrl(self, start)
            start = start + 25


def requestUrl(self, start):
    url = "https://movie.douban.com/top250"
    header = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36"
    }
    params = {
        "start": start,
        "filter": ""
    }
    response = requests.get(url=url, params=params, headers=header).text
    terr = etree.HTML(response)
    terr_lis = terr.xpath('//ol[@class="grid_view"]/li')
    for i in terr_lis:
        video_nameT = i.xpath('./div/div/div/a/span/text()')[0]
        video_scoreT = i.xpath('./div/div/div/div/span[2]/text()')[0]
        video_evaluateT = i.xpath('./div/div/div/div/span[4]/text()')[0]
        # print(video_name + ' 评分:' + video_score + "\n")

        print("正在往数据库写入" + video_nameT)

        #添加语句
        sql = 'insert into douban_data(video_name,video_score,video_evaluate) values(%s,%s,%s);'
        self.cursor.execute(sql, (video_nameT, video_scoreT, video_evaluateT))
        self.db.commit()


if __name__ == "__main__":
    Douban().forRequest()

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值