python多程序抓取貓眼電影top

2021-08-17 20:27:38 字數 1308 閱讀 5102

pip install requests

使用第三方庫requests抓取,

import requests

import re

import json

import multiprocessing

from requests import requestexception

# 獲取要抓取網頁源**

defget_html

(url):

try:

response = requests.get(url)

return response.text

except requestexception:

return

none

# 解析單個網頁並用正規表示式提取電影資訊,用yield構造生成器物件

defparse_html

(html):

pattern = re.compile('.*?board-index.*?(\d+).*?data-src="(.*?)".*?name.*?'

+'>(.*?).*?star">(.*?)

.*?releasetime">(.*?)

', re.s)

movie_list = re.findall(pattern, html)

for item in movie_list:

yield

# 將提取到的資訊格式化為json檔案。

defwrite_to_file

(text):

with open('moviestop100.txt','a', encoding='utf-8') as f:

f.write(json.dumps(text, ensure_ascii=false)+'\n')

# 主方法,構建請求url,並實現單個頁面網頁的提取

defmain

(i):

url = ''+str(i)

html = get_html(url)

for item in parse_html(html):

write_to_file(item)

# 程式執行的入口,建立乙個程序池物件,並使用map函式實現多程序

if __name__ == "__main__":

pool = multiprocessing.pool()

pool.map(main, [i*10

for i in range(12)])

#for i in range(10):

# main(i*10)

多程序抓取貓眼電影top100

import json from multiprocessing import pool import requests from requests.exceptions import requestexception import re 建構函式,輸入乙個url 傳送請求後返回該 的響應結果 de...

python抓取貓眼電影列表

分析url分頁規則 其中offset引數值為0到90 用到的庫 pyquery html解析器,語法類似jqueryfake useragent 用於偽造頭部瀏覽器資訊,防爬蟲遮蔽 相關 import requests from requests.exceptions import requeste...

抓取貓眼電影排行

首先將第乙個頁面抓取下來 import requests 抓取乙個 def get one page url headers response requests.get url,headers headers 判斷響應的狀態碼 if response.status code 200 return r...