爬取豆瓣電影排行榜top250

2021-09-22 05:52:40 字數 1604 閱讀 1279

下面直接上**:

import requests

from bs4 import beautifulsoup

# 爬取網頁原始碼

defdownload_page

(url)

: headers=

req = requests.get(url=url, headers=headers)

return req.content

# 爬取單頁電影名返回列表

defget_page_list

(html)

: soup = beautifulsoup(html,

'lxml'

)# find方法返回的是第乙個符合條件的元素

movie_list_soup = soup.find(

'ol'

, attrs=

) movie_name_list =

# find_all 返回所有符合條件的元素

for movie_li in movie_list_soup.find_all(

'li'):

movie_name = movie_li.find(

'span'

, attrs=

).gettext(

) movie_num = movie_li.find(

'em'

).gettext(

) movie_score = movie_li.find(

'span'

, attrs=

).gettext(

)'%s.%s score: %s分'

%(movie_num, movie_name, movie_score)

)return movie_name_list

# 儲存檔案

defwrite_file

(url)

:with

open

('douban_top_movies.txt'

,'a'

, encoding=

'utf-8'

)as f:

html = download_page(url)

movies = get_page_list(html)

for movie in movies:

f.write(

str(movie)

+'\n'

)def

main()

:# 通過分析發現每一頁位址的'start='後的數字不同,每頁遞增25正是每一頁所含有的電影數,通過遍歷即可爬取每一頁

for n in

range(0

,250,25

):page_url =

''% n write_file(page_url)

if __name__ ==

'__main__'

: main(

)

效果如圖:

爬取豆瓣電影TOP250

利用css選擇器對電影的資訊進行爬取 import requests import parsel import csv import time import re class cssspider def init self self.headers defget dp self,url respon...

豆瓣Top250電影爬取

from bs4 import beautifulsoup 網頁解析,獲取資料 import re 正規表示式,進行文字匹配 import urllib.request,urllib.error 制定url,獲取網頁資料 import xlwt 進行excel操作 import sqlite3 進行...

python爬取豆瓣電影top250

簡要介紹 爬取豆瓣電影top250上相關電影的資訊,包括影片鏈結 影片名稱 上映時間 排名 豆瓣評分 導演 劇情簡介。使用 requests etree xpath 1 檢視網頁資訊,確定爬取的內容,建立資料庫 class spiderdata peewee.model url peewee.cha...