Python新手爬蟲一:爬取影片名稱評分等


 

豆瓣網站:https://movie.douban.com/chart

先上最后的代碼:

from bs4 import BeautifulSoup
from lxml import html
import xml
import requests
from fake_useragent import UserAgent   #ua庫
import xlwt    #表格模塊

n = []   #存放電影名稱
p = []   #存放電影評分

def get_url():
   url = "https://movie.douban.com/chart"
   ua = UserAgent()
   headers={'user-agent':ua.random}
   f = requests.get(url,headers=headers)     #Get該網頁從而獲取該html內容
   soup = BeautifulSoup(f.text,'lxml')       #用lxml解析器解析該網頁的內容, 好像f.content也是返回的html

   for k in soup.find_all('div',class_='pl2'):     #找到div並且class為pl2的標簽
      b = k.find('a')       #在每個對應div標簽下找a標簽
      n.append(b.get_text())    #取標簽 a 下的文字,並添加到 n 列表中
   
   for i in soup.find_all('div',class_='star clearfix'):
      c = i.find_all('span')  #在每個對應div標簽下找span標簽,會發現,一個a里面有四組span
      t = c[1].string,c[2].string   #取相對應span中的字符串,評分和評價人數
      p.append(t) #添加到 p 列表中

get_url()   #獲取數據

style = xlwt.XFStyle()     #初始化樣式模板
font = xlwt.Font()         #初始化字體模板
pattern = xlwt.Pattern()   #初始化背景顏色模板 
alignment = xlwt.Alignment() #初始化單元格格式模板

font.name = 'Times New Roman' #指定字體
font.bold = True        #加黑
font.height = 20*14     #字體

pattern.pattern = xlwt.Pattern.SOLID_PATTERN # 設置背景顏色的模式
pattern.pattern_fore_colour = 2  # 背景顏色

alignment.horz = 0x02   # 0x01(左端對齊)、0x02(水平方向上居中對齊)、0x03(右端對齊)
alignment.vert = 0x01   # 0x00(上端對齊)、 0x01(垂直方向上居中對齊)、0x02(底端對齊)
#alignment.wrap = 1      # 設置自動換行

style.font = font             #應用到style中
style.pattern = pattern       #
style.alignment = alignment   #應用到style中

workbook = xlwt.Workbook()
worksheel = workbook.add_sheet('豆瓣電影排行榜')   #創建一個新表格
worksheel.write(0,0,'電影名',style)    #填寫行、列、值
worksheel.write(0,1,'評分',style)

for x in range(1,11):
   for y in range(0,2):
      if y == 0:
         worksheel.write(x,y,label=n[x-1])
      elif y == 1:
         worksheel.write(x,y,label=p[x-1])

workbook.save(r"C:\Users\fan\Desktop\豆瓣影評.xls")    #創建excel表

效果圖:

 

思路:

1、進入網頁—>F12—>右擊影名—>檢查—>查看相對應的html代碼

 

 

 發現影名是存在<div class="pl2">標簽下的<a>標簽中,使用requests+BeautifulSoup庫獲

評分和評價人數存儲在<div class="star clearfix">下的<span>標簽中。

 

所涉及到的庫,全部是前文《爬蟲常用庫》中有介紹。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM