《權(quán)利的游戲》、《天賦異稟》等耳熟能詳?shù)拿绖?,面?duì)如此繁多的美劇,此時(shí)不禁會(huì)問自己,我喜歡看什么美劇呢? 這是一個(gè)非常難以回答的問題,原因在于不同的人會(huì)有不同的偏好。為了簡(jiǎn)化問題的求解,我們將嘗試用Python語言進(jìn)行數(shù)據(jù)分析來回答"我喜歡看什么美劇",先限定下主題就是我自己。 為了搞明白我喜歡看什么美劇,前提是要知道目前有哪些美劇,然后才能在這些美劇中根據(jù)條件篩選出我喜歡看的。所以第一件事要做的就是采集基本的數(shù)據(jù)。 Python實(shí)現(xiàn)數(shù)據(jù)采集需要用到的第三方庫有requests和bs4,其中requests用來處理HTTP請(qǐng)求,bs4中的BeautifulSoup用來解析下載的HTML代碼從中得到想要的數(shù)據(jù)。 1. 安裝第三方庫。 利用包管理軟件pip來完成第三方庫的安裝。 pip install requests pip install bs4 2. 利用requests庫下載HTML代碼。 html = requests.get('https://www./search.php?searchtype=5&tid=2', verify=False).content 3. 利用BeautifulSoup解析HTML。 soup = BeautifulSoup(html, 'html.parser') for item in soup.select('div.hy-video-list li > a'): row = edict() row.video_name = item['title'] row.video_url = item['href'] row.video_type = i
score_tag = item.select_one('span.score') if score_tag is not None: row.video_score = score_tag.text print(row) 4. 批處理所有列表。 for i in tqdm(range(1, 112)): url = 'https://www./search.php?page={}&searchtype=5&tid=2'.format(i) soup = BeautifulSoup(requests.get(url, verify=False).content, 'html.parser') for item in soup.select('div.hy-video-list li > a'): row = edict() row.video_name = item['title'] row.video_url = item['href']
score_tag = item.select_one('span.score') if score_tag is not None: row.video_score = score_tag.text print(row) 結(jié)語 where2go 團(tuán)隊(duì) 一個(gè)專注于分享算法思想的公眾號(hào)! 溫馨提示:點(diǎn)擊頁面下方“留言”發(fā)表評(píng)論,期待您的參與!期待您的轉(zhuǎn)發(fā)! |
|