python爬取豆瓣電影TOP250數(shù)據(jù)
在執(zhí)行程序前,先在MySQL中創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)"pachong"。
import pymysql
import requests
import re
#獲取資源并下載
def resp(listURL):
#連接數(shù)據(jù)庫(kù)
conn = pymysql.connect(
host = '127.0.0.1',
port = 3306,
user = 'root',
password = '******', #數(shù)據(jù)庫(kù)密碼請(qǐng)根據(jù)自身實(shí)際密碼輸入
database = 'pachong',
charset = 'utf8'
)
#創(chuàng)建數(shù)據(jù)庫(kù)游標(biāo)
cursor = conn.cursor()
#創(chuàng)建列表t_movieTOP250(執(zhí)行sql語(yǔ)句)
cursor.execute('create table t_movieTOP250(id INT PRIMARY KEY auto_increment NOT NULL ,movieName VARCHAR(20) NOT NULL ,pictrue_address VARCHAR(100))')
try:
# 爬取數(shù)據(jù)
for urlPath in listURL:
# 獲取網(wǎng)頁(yè)源代碼
response = requests.get(urlPath)
html = response.text
# 正則表達(dá)式
namePat = r'alt="(.*?)" src='
imgPat = r'src="(.*?)" class='
# 匹配正則(排名【用數(shù)據(jù)庫(kù)中id代替,自動(dòng)生成及排序】、電影名、電影海報(bào)(圖片地址))
res2 = re.compile(namePat)
res3 = re.compile(imgPat)
textList2 = res2.findall(html)
textList3 = res3.findall(html)
# 遍歷列表中元素,并將數(shù)據(jù)存入數(shù)據(jù)庫(kù)
for i in range(len(textList3)):
cursor.execute('insert into t_movieTOP250(movieName,pictrue_address) VALUES("%s","%s")' % (textList2[i],textList3[i]))
#從游標(biāo)中獲取結(jié)果
cursor.fetchall()
#提交結(jié)果
conn.commit()
print("結(jié)果已提交")
except Exception as e:
#數(shù)據(jù)回滾
conn.rollback()
print("數(shù)據(jù)已回滾")
#關(guān)閉數(shù)據(jù)庫(kù)
conn.close()
#top250所有網(wǎng)頁(yè)網(wǎng)址
def page(url):
urlList = []
for i in range(10):
num = str(25*i)
pagePat = r'?start=' + num + '&filter='
urL = url+pagePat
urlList.append(urL)
return urlList
if __name__ == '__main__':
url = r"https://movie.douban.com/top250"
listURL = page(url)
resp(listURL)
結(jié)果如下圖:


以上就是我的分享,如果有什么不足之處請(qǐng)指出,多交流,謝謝!
以上就是python爬取豆瓣電影TOP250數(shù)據(jù)的詳細(xì)內(nèi)容,更多關(guān)于python爬取豆瓣電影的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Matplotlib自定義坐標(biāo)軸刻度的實(shí)現(xiàn)示例
這篇文章主要介紹了Matplotlib自定義坐標(biāo)軸刻度的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06
Python實(shí)現(xiàn)windows自動(dòng)關(guān)機(jī)功能
這篇文章主要為大家詳細(xì)介紹了如何使用Python實(shí)現(xiàn)windows自動(dòng)關(guān)機(jī)功能,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,有需要的小伙伴可以參考一下2025-01-01
PyCharm進(jìn)行Django項(xiàng)目開發(fā)環(huán)境搭建
本文主要介紹了PyCharm進(jìn)行Django項(xiàng)目開發(fā)環(huán)境搭建,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-02-02
Python實(shí)現(xiàn)微博動(dòng)態(tài)圖片爬取詳解
這篇文章主要為大家介紹了如何利用Python中的爬蟲實(shí)現(xiàn)微博動(dòng)態(tài)圖片的爬取,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起動(dòng)手試一試2022-03-03
如何用Pytorch搭建一個(gè)房?jī)r(jià)預(yù)測(cè)模型
這篇文章主要介紹了用Pytorch搭建一個(gè)房?jī)r(jià)預(yù)測(cè)模型,在這里我將主要討論P(yáng)yTorch建模的相關(guān)方面,作為一點(diǎn)額外的內(nèi)容,我還將演示PyTorch中開發(fā)的模型的神經(jīng)元重要性,需要的朋友可以參考下2023-03-03
在IPython中進(jìn)行Python程序執(zhí)行時(shí)間的測(cè)量方法
今天小編就為大家分享一篇在IPython中進(jìn)行Python程序執(zhí)行時(shí)間的測(cè)量方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-11-11
Python機(jī)器學(xué)習(xí)之手寫KNN算法預(yù)測(cè)城市空氣質(zhì)量
KNN(K-Nearest Neighbor)最鄰近分類算法是數(shù)據(jù)挖掘分類(classification)技術(shù)中常用算法之一,本文將介紹如何通過(guò)KNN算法實(shí)現(xiàn)城市空氣質(zhì)量的預(yù)測(cè),感興趣的同學(xué)可以了解一下2021-12-12

