首先,打開豆瓣電影Top 250,然后進行網頁分析。找到它的Host和User-agent,並保存下來。 然后,我們通過翻頁,查看各頁面的url,發現規律:
第一頁:https://movie.douban.com/top250?start=0&filter=
第二頁:https://movie.douban.com/top250?start=25&filter=
第三頁:https://movie.douban.com/top250?start=50&filter=
第四頁:https://movie.douban.com/top250?start=75&filter=
我們發現,每個頁面的url都是https://movie.douban.com/top250?start= +25+ &filter=的規律。如此,就可以開始寫代碼:
import requests from bs4 import BeautifulSoup def get_movie(): headers={ 'Host': 'movie.douban.com', 'User-Agent': 'Mozilla / 5.0(Windows NT 6.1;WOW64) AppleWebKit / 537.36(KHTML, likeGecko) Chrome / 45.0.2454.101Safari / 537.36' } #防止反扒措施 movie_list=[] for i in range(10): url='https://movie.douban.com/top250?start='+str(i*25) #各頁面url response=requests.get(url,headers=headers,timeout=10) soup=BeautifulSoup(response.text,'lxml') div_list=soup.find_all('div',class_='hd') for each in div_list: movie=each.a.span.text.strip() movie_list.append(movie) for j in movie_list: print(j) #按格式輸出電影名稱 get_movie()
下面給出運行結果: