自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

我們一起分享一次實(shí)用的爬蟲(chóng)經(jīng)驗(yàn)

開(kāi)發(fā) 前端
一開(kāi)始我以為很簡(jiǎn)單,我照著他給的網(wǎng)站,然后一頓抓包操作,到頭來(lái)竟然沒(méi)有找到響應(yīng)數(shù)據(jù),不論是在ALL還是XHR里邊都沒(méi)有找到任何符合要求的數(shù)據(jù),真是納悶。講到這里,【杯酒】大佬一開(kāi)始也放大招,嚇得我不敢說(shuō)話。

[[436477]]

大家好,我是Python進(jìn)階者。

前言

前幾天鉑金群有個(gè)叫【艾米】的粉絲在問(wèn)了一道關(guān)于Python網(wǎng)絡(luò)爬蟲(chóng)的問(wèn)題,如下圖所示。

不得不說(shuō)這個(gè)粉絲的提問(wèn)很詳細(xì),也十分的用心,給他點(diǎn)贊,如果大家日后提問(wèn)都可以這樣的話,想必可以節(jié)約很多溝通時(shí)間成本。

其實(shí)他抓取的網(wǎng)站是愛(ài)企查,類(lèi)似企查查那種。

一、思路

一開(kāi)始我以為很簡(jiǎn)單,我照著他給的網(wǎng)站,然后一頓抓包操作,到頭來(lái)竟然沒(méi)有找到響應(yīng)數(shù)據(jù),不論是在ALL還是XHR里邊都沒(méi)有找到任何符合要求的數(shù)據(jù),真是納悶。講到這里,【杯酒】大佬一開(kāi)始也放大招,嚇得我不敢說(shuō)話。

其實(shí)是想復(fù)雜了,一會(huì)兒你就知道了。

懷著一顆學(xué)習(xí)的心,我看了杯酒的代碼,發(fā)現(xiàn)他構(gòu)造的URL中有下圖這個(gè):

然后我再去網(wǎng)頁(yè)中去找這個(gè)URL,可是這個(gè)URL在原網(wǎng)頁(yè)中根本就找不到???這就離譜了,總不能空穴來(lái)風(fēng)吧,事出必有因!

二、分析

原來(lái)這里有個(gè)小技巧,有圖有真相。

之后根據(jù)抓包情況,就可以看到數(shù)據(jù)了。

在里邊可以看到數(shù)據(jù):

這里【杯酒】大佬查詢的關(guān)鍵詞是:數(shù)據(jù),所以得到了好幾頁(yè)數(shù)據(jù),而我和【艾米】都是直接查的:上海手術(shù)器械廠,這個(gè)只有一頁(yè),不太好觀察規(guī)律,所以一直卡住了。

之后將得到的代碼中的URL的關(guān)鍵詞,改為:上海手術(shù)器械廠,就可以順利的得到數(shù)據(jù),是不是很神奇呢?

三、代碼

下面就奉上本次爬蟲(chóng)的代碼,歡迎大家積極嘗試。

  1. # -*- coding: utf-8 -*- 
  2. import requests 
  3. import user_agent 
  4. from urllib import parse 
  5.  
  6.  
  7. def search(key_word): 
  8.     for page_num in range(1, 2): 
  9.         url = f'https://aiqicha.baidu.com/s/advanceFilterAjax?q={parse.quote(key_word)}&t=&p={str(page_num)}&s=10&o=0&f=%7B%7D' 
  10.         headers = { 
  11.             'User-Agent': user_agent.generate_user_agent(), 
  12.             'Referer''https://aiqicha.baidu.com/s?q=%E6%95%B0%E6%8D%AE&t=0'
  13.         } 
  14.         print(url) 
  15.         response = requests.get(url=url, headers=headers) 
  16.         print(requests) 
  17.         print(response.json()) 
  18.         # break 
  19.  
  20.  
  21. if __name__ == '__main__'
  22.     search('上海手術(shù)器械廠'

只需要將關(guān)鍵詞換成你自己想要搜索的就可以了。

下圖是運(yùn)行的結(jié)果:

下圖是原網(wǎng)頁(yè)的截圖,可以看到數(shù)據(jù)可以對(duì)的上:

四、總結(jié) 

我是Python進(jìn)階者。本文基于粉絲提問(wèn),針對(duì)一次有趣的爬蟲(chóng)經(jīng)歷,分享一個(gè)實(shí)用的爬蟲(chóng)經(jīng)驗(yàn)給大家。下次再遇到類(lèi)似這種首頁(yè)無(wú)法抓取的網(wǎng)頁(yè),或者看不到包的網(wǎng)頁(yè),不妨試試看文中的“以退為進(jìn),投機(jī)取巧”方法,說(shuō)不定有妙用噢!

 

責(zé)任編輯:武曉燕 來(lái)源: Python爬蟲(chóng)與數(shù)據(jù)挖掘
相關(guān)推薦

2022-10-08 00:00:05

SQL機(jī)制結(jié)構(gòu)

2023-04-26 07:30:00

promptUI非結(jié)構(gòu)化

2017-01-22 15:09:08

架構(gòu)閉環(huán)演進(jìn)

2023-08-04 08:20:56

DockerfileDocker工具

2021-01-12 05:08:49

DHCP協(xié)議模型

2021-08-27 07:06:09

DubboDocker技術(shù)

2022-03-31 18:59:43

數(shù)據(jù)庫(kù)InnoDBMySQL

2022-05-24 08:21:16

數(shù)據(jù)安全API

2023-08-10 08:28:46

網(wǎng)絡(luò)編程通信

2022-10-18 07:33:57

Maven構(gòu)建工具

2023-09-10 21:42:31

2023-06-30 08:18:51

敏捷開(kāi)發(fā)模式

2021-08-27 07:06:10

IOJava抽象

2024-02-20 21:34:16

循環(huán)GolangGo

2022-01-17 06:59:40

Grep指令linux

2021-12-29 08:27:05

ByteBuffer磁盤(pán)服務(wù)器

2022-03-08 17:52:58

TCP格式IP

2021-07-28 07:53:20

Github ActiDotnet 應(yīng)用

2021-12-27 10:08:16

Python編程語(yǔ)言庫(kù)

2020-10-24 13:50:59

Python庫(kù)編程語(yǔ)言
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)