導航:首頁 > 編程語言 > python爬取網頁電影

python爬取網頁電影

發布時間:2022-04-27 22:43:33

1. 怎樣用python獲取電影

實驗室這段時間要採集電影的信息,給出了一個很大的數據集,數據集包含了4000多個電影名,需要我寫一個爬蟲來爬取電影名對應的電影信息。

其實在實際運作中,根本就不需要爬蟲,只需要一點簡單的Python基礎就可以了。

前置需求:

Python3語法基礎

HTTP網路基礎

===================================

第一步,確定API的提供方。IMDb是最大的電影資料庫,與其相對的,有一個OMDb的網站提供了API供使用。這家網站的API非常友好,易於使用。

第二步,確定網址的格式。

第三步,了解基本的Requests庫的使用方法。

2. python爬蟲抓取電影top20排名怎麼寫

初步接觸python爬蟲(其實python也是才起步),發現一段代碼研究了一下,覺得還比較有用處,Mark下。
上代碼:

#!/usr/bin/python#coding=utf-8#Author: Andrew_liu#mender:cy"""
一個簡單的Python爬蟲, 用於抓取豆瓣電影Top前100的電影的名稱
Anthor: Andrew_liu
mender:cy
Version: 0.0.2
Date: 2017-03-02
Language: Python2.7.12
Editor: JetBrains PyCharm 4.5.4
"""import stringimport reimport urllib2import timeclass DouBanSpider(object) :
"""類的簡要說明
主要用於抓取豆瓣Top100的電影名稱

Attributes:
page: 用於表示當前所處的抓取頁面
cur_url: 用於表示當前爭取抓取頁面的url
datas: 存儲處理好的抓取到的電影名稱
_top_num: 用於記錄當前的top號碼
"""

def __init__(self):
self.page = 1
self.cur_url = "h0?start={page}&filter=&type="
self.datas = []
self._top_num = 1
print u"豆瓣電影爬蟲准備就緒, 准備爬取數據..."

def get_page(self, cur_page):
"""
根據當前頁碼爬取網頁HTML
Args:
cur_page: 表示當前所抓取的網站頁碼
Returns:
返回抓取到整個頁面的HTML(unicode編碼)
Raises:
URLError:url引發的異常
"""
url = self.cur_url try:
my_page = urllib2.urlopen(url.format(page=(cur_page - 1) * 25)).read().decode("utf-8") except urllib2.URLError, e: if hasattr(e, "code"): print "The server couldn't fulfill the request."
print "Error code: %s" % e.code elif hasattr(e, "reason"): print "We failed to reach a server. Please check your url and read the Reason"
print "Reason: %s" % e.reason return my_page def find_title(self, my_page):
"""
通過返回的整個網頁HTML, 正則匹配前100的電影名稱

Args:
my_page: 傳入頁面的HTML文本用於正則匹配
"""
temp_data = []
movie_items = re.findall(r'<span.*?class="title">(.*?)</span>', my_page, re.S) for index, item in enumerate(movie_items): if item.find("&nbsp") == -1:
temp_data.append("Top" + str(self._top_num) + " " + item)
self._top_num += 1
self.datas.extend(temp_data) def start_spider(self):
"""
爬蟲入口, 並控制爬蟲抓取頁面的范圍
"""
while self.page <= 4:
my_page = self.get_page(self.page)
self.find_title(my_page)
self.page += 1def main():
print u"""
###############################
一個簡單的豆瓣電影前100爬蟲
Author: Andrew_liu
mender: cy
Version: 0.0.2
Date: 2017-03-02
###############################
"""
my_spider = DouBanSpider()
my_spider.start_spider()
fobj = open('/data/moxiaokai/HelloWorld/cyTest/blogcode/top_move.txt', 'w+') for item in my_spider.datas: print item
fobj.write(item.encode("utf-8")+' ')
time.sleep(0.1) print u"豆瓣爬蟲爬取完成"if __name__ == '__main__':
main()

運行結果:

3. 如何利用python爬取網頁內容

利用python爬取網頁內容需要用scrapy(爬蟲框架),但是很簡單,就三步

  1. 定義item類

  2. 開發spider類

  3. 開發pipeline

想學習更深的爬蟲,可以用《瘋狂python講義》

4. python 怎樣爬去網頁的內容

用python爬取網頁信息的話,需要學習幾個模塊,urllib,urllib2,urllib3,requests,httplib等等模塊,還要學習re模塊(也就是正則表達式)。根據不同的場景使用不同的模塊來高效快速的解決問題。

最開始我建議你還是從最簡單的urllib模塊學起,比如爬新浪首頁(聲明:本代碼只做學術研究,絕無攻擊用意):

這樣就把新浪首頁的源代碼爬取到了,這是整個網頁信息,如果你要提取你覺得有用的信息得學會使用字元串方法或者正則表達式了。

平時多看看網上的文章和教程,很快就能學會的。

補充一點:以上使用的環境是python2,在python3中,已經把urllib,urllib2,urllib3整合為一個包,而不再有這幾個單詞為名字的模塊

5. python 爬蟲求教

python爬蟲,requests非常好用,建議使用。匹配結果使用re正則,列:

#-*-coding:utf-8-*-

importre


str1="""
<spanclass="title">尋夢環游記</span>
...
<spanclass="rating_num"property="v:average">9.0</span>
"""

title=re.search(r'<spanclass="title">(.*?)</span>',str1)
iftitle:
print(title.group(1))
rating=re.search(r'<spanclass="rating_num"property="v:average">(.*?)</span>',str1)
ifrating:
print(rating.group(1))

6. python抓取VIP電影違法嗎

一般來說,抓取本身並不會違法。問題是,你把抓取的信息放在自己的網站/app裡面,進行傳播、引流、獲利。因為你並不擁有這些內容的版權,直接使用很容易觸犯相關法律法規。

簡介:

Python是一種廣泛使用的解釋型、高級和通用的編程語言。Python由荷蘭數學和計算機科學研究學會的Guido van Rossum創造,第一版發布於1991年,它是ABC語言的後繼者,也可以視之為一種使用傳統中綴表達式的LISP方言。

Python提供了高效的高級數據結構,還能簡單有效地面向對象編程。Python語法和動態類型,以及解釋型語言的本質,使它成為多數平台上寫腳本和快速開發應用的編程語言,隨著版本的不斷更新和語言新功能的添加,逐漸被用於獨立的、大型項目的開發。

Python支持多種編程范型,包括函數式、指令式、結構化、面向對象和反射式編程。Python解釋器易於擴展,可以使用C或C++(或者其他可以通過C調用的語言)擴展新的功能和數據類型。Python也可用於可定製化軟體中的擴展程序語言。

Python擁有動態類型系統和垃圾回收功能,能夠自動管理內存使用,並且其本身擁有一個巨大而廣泛的標准庫,提供了適用於各個主要系統平台的源碼或機器碼。

7. 怎樣用python爬取網頁

#coding=utf-8
importurllib
importre

#網路貼吧網址:https://tieba..com/index.html
#根據URL獲取網頁HTML內容
defgetHtmlContent(url):
page=urllib.urlopen(url)
returnpage.read()

#從HTML中解析出所有jpg的圖片的URL
#從HTML中jpg格式為<img...src="xxx.jpg"width='''>
defgetJPGs(html):
#解析jpg圖片URL的正則表達式
jpgReg=re.compile(r'<img.+?src="(.+?.jpg)"')
#解析出jpg的URL列表
jpgs=re.findall(jpgReg,html)
returnjpgs

#用圖片url下載圖片並保存成制定文件名
defdownloadJPG(imgUrl,fileName):
urllib.urlretrieve(imgUrl,fileName)

#批量下載圖片,默認保存到當前目錄下
defbatchDownloadJPGs(imgUrls,path='../'):#path='./'
#給圖片重命名
count=1
forurlinimgUrls:
downloadJPG(url,''.join([path,'{0}.jpg'.format(count)]))
print"下載圖片第:",count,"張"
count+=1

#封裝:從網路貼吧網頁下載圖片
defdownload(url):
html=getHtmlContent(url)
jpgs=getJPGs(html)
batchDownloadJPGs(jpgs)

defmain():
url="http://www.meituba.com/dongman/"
download(url)

if__name__=='__main__':
main()

8. 用python爬一個視頻網站,因為一個影視有多個類別,所以在爬數據時會出現重復的影視作品

存為字典,做個異常判斷,如果含有這個key.就跳過。么有這個key就添加到dict中

9. [求助] python 如何爬取 網頁上調用JS函數打開的視頻鏈接

  1. selenium + phantomjs 模擬點擊按鈕,或者另寫代碼實現js函數openVideo();

  2. 順著第一步再去解析新頁面,看看能否找到視頻的原始地址;

  3. 假設視頻的原始地址第二步找到了,在通過視頻的原始地址下載視頻就OK啦。

閱讀全文

與python爬取網頁電影相關的資料

熱點內容
騰訊雲盤伺服器地址 瀏覽:761
無損壓縮可以壓文檔嘛 瀏覽:114
人工智慧編譯視頻 瀏覽:524
什麼新聞app比較真實 瀏覽:347
自製編譯器自製編程語言 瀏覽:111
python常態開發 瀏覽:133
復制加密卡到榮耀手錶 瀏覽:679
dellemc伺服器如何安裝系統 瀏覽:705
python爬取整個網頁 瀏覽:664
程序員搞笑圖片上線 瀏覽:776
杜pdf 瀏覽:233
小米直播伺服器地址 瀏覽:487
redhatlinux服務 瀏覽:548
APP頁面頂端展示畫面叫什麼 瀏覽:820
python兩點間距離 瀏覽:183
新程序員珠海和武漢哪個適合發展 瀏覽:275
爬取vip視頻python代碼 瀏覽:668
單片機中trisd什麼意思 瀏覽:129
計算機編程天才 瀏覽:930
伺服器如何調高解析度 瀏覽:33