【Python爬蟲】Beautiful Soup豆瓣電影TOP250

#coding:utf-8
from bs4 import BeautifulSoup
import requests


# 讀取網頁
# 解析網頁
# 獲取相關數據
# 翻頁 通過取后頁標簽中的 a 標簽

# 第一頁 https://movie.douban.com/top250?start=0
# 第二頁 https://movie.douban.com/top250?start=25&filter=
# 第三頁 https://movie.douban.com/top250?start=50&filter=

def main(url_temp):
    rep=requests.get(url_temp)
    soup=BeautifulSoup(rep.text,'lxml')
    ol=soup.find("ol",class_="grid_view")
    li_list=ol.find_all('li')
    for li in li_list:
        img=li.find('img')
        #print(img['alt'],img['src'])
        img_src=img['src']
        title=li.find("span",class_="title").text.strip()
        act_info=li.find("div",class_="bd").p.get_text().strip()
        star_info_all = li.find('div', class_='star').find_all('span')
        mv_score =star_info_all[1].text.strip()
        comments_num =star_info_all[3].text.strip()
        print(title)
        print(img_src)
        print(act_info)
        print(mv_score)
        print(comments_num)
        print('-' * 50)
    next_span=soup.find("span",class_="next")
    next_a=next_span.find('a')
    next_url=None
    if next_a:
        next_url='https://movie.douban.com/top250?start=0'+next_a['href']
    return next_url



if __name__=="__main__":
    n_url="https://movie.douban.com/top250?start=0"
    # 當 n_url 不是None  為真的時候就進行翻頁
    while n_url:
        n_url = main(n_url)
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容