Python爬蟲實戰案例 機 App 抓包爬

2021-10-09 19:43:22 字數 2751 閱讀 6895

class

douyuspideritem

(scrapy.item)

:name = scrapy.field(

)# 儲存照⽚的名字

imagesurls = scrapy.field(

)# 照⽚的 url 路徑

imagespath = scrapy.field(

)# 照⽚儲存在本地的路徑

import scrapy

:# 返回從 json⾥獲取 data 段資料集合

data = json.loads(response.text)

["data"

]# 如果 data⾥⾯沒有值,那麼就直接退出函式

#if not data:

# return

for each in data:

item = douyuspideritem(

)item[

"name"

]= each[

"nickname"

]item[

"imagesurls"

]= each[

"vertical_src"

]yield item

self.offset +=

20yield scrapy.request(self.url +

str(self.offset)

, callback =

self.parse)

item_pipelines =

# images 的存放位置,之後會在 pipelines.py⾥調⽤

images_store =

"/users/power/lesson_python/douyuspider/images"

# user-agent

user_agent =

'dyzb/2.290 (iphone; ios 9.3.4; scale/2.00)'

import scrapy

import os

from scrapy.pipelines.images import imagespipeline

from scrapy.utils.project import get_project_settings

class

imagespipeline

(imagespipeline)

:images_store = get_project_settings(

).get(

"images_store"

)def

get_media_requests

(self, item, info)

:image_url = item[

"imagesurls"

]yield scrapy.request(image_url)

defitem_completed

(self, results, item, info)

:# 固定寫法,獲取圖⽚路徑,同時判斷這個路徑是否正確,如果正確,就 放 到 image_path⾥,imagespipeline 原始碼剖析可⻅

#get_media_requests 的作⽤就是為每⼀個圖⽚鏈結⽣成⼀個 request 物件,這

個⽅法的輸出將作為 item_completed 的輸⼊中的 results,results 是⼀個元組,

每 個元組包括 (success, imageinfoo***ilure) 。如果 success=true ,

imageinfo or_failure 是⼀個字典,包括 url/path/checksum 三個 key。

在項⽬根⽬錄下新建 main.py⽂件,⽤於除錯

from scrapy import cmdline

cmdline.execute(

'scrapy crawl douyu'

.split(

))

執⾏程式

py2 main.py

python爬蟲實戰 貓眼電影案例

背景 抓包ajax非同步載入的網頁,載入資料的url需要通過抓包獲取。一般確認是否非同步載入,只需要右鍵開啟網頁源 如果原始碼文字內容與前端展示的結果不一致,則屬於非同步載入。這時需要按f12開啟開發者工具的network,重新重新整理網頁,就能看到真正的url。如下圖所示,開發者工具中紅色框的ur...

python爬蟲案例 Python爬蟲案例集合

在python2.x裡面有urllib和urllib2 在python3.x裡面就把urllib和urllib2合成乙個urllib urllib3是在python3.x了裡面新增的第三方擴充套件。import urllib.request 向指定的url位址傳送請求,並返回伺服器響應的類檔案物件 ...

實戰 python爬蟲經典小案例彙總

所有例項 github位址 開始最好模仿,不要自己寫,錯了找不到原因 應用 搶票,投票,報告分析,飲食地圖,輿情監控 儲存資料 的方法大概可以分為幾類 儲存文字 儲存二進位制檔案 包括 儲存到資料庫 1.首先是獲取目標頁面 2.解析獲取的網頁中的元素,唯一定位,取得自己想要的 借助各種庫工具,分析頁...