[問題] 電影排行爬蟲

看板Python作者 (此一時也彼一時)時間3年前 (2022/05/10 23:47), 編輯推噓0(003)
留言3則, 2人參與, 最新討論串1/1
目前正在學習使用requests模組爬蟲, 以奇摩電影的排行榜當作練習, 網址如下: https://movies.yahoo.com.tw/chart.html?cate=year 網頁右邊有一側邊欄台北票房、全美票房、預告片的排行榜, 擷取網頁內排行資訊的部分語法如下: <div class="num">2</div> <span>媽的多重宇宙</span> </li> 不管是哪種排行榜都是這種結構, 但是以下列的函數去操作時, 都只找到台北票房的部分, 跑完十個項目就結束了, 想請教有沒有漏掉什麼地方, 謝謝 以下是爬蟲的函數: def get_webpage(self, url): html = requests.get(url=url,headers=self.headers).content.decode('utf-8') # 利用正規表示法搜尋 pattern = '<div class="num">(.*?)</div>.*?<span>(.*?)</span>.*?</li>' regex = re.compile(pattern, re.S) movie_list = regex.findall(html) self.save_webpage(movie_list) def save_webpage(self, movie_list): movie_dict = {} for movie in movie_list: movie_dict['rank'] = movie[0].strip() movie_dict['name'] = movie[1].strip() print(movie_dict) time.sleep(random.uniform(0, 2)) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.133.252.234 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1652197662.A.D70.html

05/11 00:05, 3年前 , 1F
用正則太累了吧
05/11 00:05, 1F

05/11 00:09, 3年前 , 2F
預告片/全美 都是點擊才動態載入,你要爬的url不對
05/11 00:09, 2F

05/16 11:34, , 3F
解析 HTML 用 BeautifulSoup 比較方便
05/16 11:34, 3F
文章代碼(AID): #1YUeaUrm (Python)
文章代碼(AID): #1YUeaUrm (Python)