python 將爬取的資料寫入到mysql資料庫

2021-10-09 21:52:26 字數 1934 閱讀 8188

內容還是老的內容,主要是結合了一下python和mysql~

存入到資料庫後是這樣的:

話不多說直接上**咯~

import pymysql

import requests

from lxml import etree

#連線本地資料庫

conn = pymysql.connect(host='localhost',user='root',password='123456',database='demo',charset='utf8')

#建立游標

cur = conn.cursor()

#設定us偽裝

#遍歷電影天堂頁面,共計221頁

for i in range(1, 222):

print(f'————————正在寫入第頁————————')

#除了第一頁之外,其他頁面的位址都是else語句裡的位址,所以加個判斷

if i == 1:

myurl = ''

else:

myurl = '' + str(i) + '.html'

#對資料進行提取的操作

getdata = requests.get(url=myurl, headers=myua)

getdata.encoding = 'gbk'

xdata = etree.html(getdata.text)

urls = xdata.xpath('//table[@class="tbspan"]//a/@href')

names = xdata.xpath('//a[@class="ulink"]/text()')

urls = ['' + urls for urls in urls]

dic = dict(zip(urls, names))

#遍歷剛才組合好的字典

for u, n in dic.items():

getdata2 = requests.get(url=u, headers=myua)

getdata2.encoding = 'gbk'

xdata2 = etree.html(getdata2.text)

url2 = xdata2.xpath('//table/tbody//a/@href')

for u2 in url2:

print("正在寫入:" + n )

#建立寫入的語句

sql = 'insert into film(name,downlink) values(%s,%s)'

args = (n,u2)

#執行寫入操作

cur.execute(sql,args)

#進行提交。不提交的話中間寫入了也查詢不到資料

conn.commit()

print("寫入成功!")

#關閉游標和資料庫連線

cur.close()

conn.close()

print('全部寫入成功!')

附乙個資料表的建立語句,反正也比較簡單咯:

create table `film` (

`id` int(8) not null auto_increment,

`name` varchar(300) not null,

`downlink` varchar(10000) not null,

primary key (`id`)

) default charset=utf8

將爬取的資料寫入csv檔案中

爬取某 的 資訊 from lxml import etree import requests import csv 建立csv檔案 f open e python mypython test2.csv wt newline writer csv.writer f 寫入表頭 writer.write...

python爬蟲練習,爬取資料寫入MySQL資料庫

本次爬取內容就選取章節名和章節鏈結作為舉例 資料庫操作的基本方法 1 連線資料庫 2 獲取資料庫游標 3 執行sql語句 4 斷開資料庫連線 連線資料庫,引數包括ip 使用者名稱 密碼 對應的庫名 connect pymysql.connect localhost root gui2019 pyth...

python 爬取b站彈幕並寫入到csv

import requests import re from bs4 import beautifulsoup import csv import pandas as pd from itertools import islice import numpy as np def get csv url...