
文章目錄
- 前言
- 流程
- 第一步,打開網站
- 第二步,分析網站
- 分析json包
- 獲取資料并簡單處理
前言
之所以標題不說是爬什么網,主要是怕大家看了標題以為是之前那篇的返稿,其實不是啊,
這次爬的是騰訊的暑期實習招聘,
上次爬完之后放那邊也沒去更新過,今天再上去看,發現人家已經改版了,
不知道為啥啊,就喜歡爬他們家的,還有爬CSDN的,
那,這次改版,資料是好爬了呢,還是難爬了呢?拭目以待啊(好爬我就不寫了,難爬我就寫不了)
流程
第一步,打開網站
這不廢話嘛,不打開網站怎么分析嘛,
騰訊暑期實習
不知道是不是我網路不太行,打開這個網址,有時候可以,有時候就是白屏,
所以爬不下來不用擔心是被封了IP,可能是真的卡,緩緩再來就好,
第二步,分析網站
進去之后,你隨便點,你會發現點來點去就是那一個網址,開心吧,
我的第一反應就是網頁渲染,很抱歉這個系列沒有提到網頁渲染以及解決方法,因為我也不會啊,,,
畢竟我是個學后端的,
當時心里拔涼拔涼的,當時我還是不死心,點開了網頁原始碼:

好樣兒的,
當我把這句拿去百度的時候:href="javascript:;",網上的回復清一色都是用自動化測驗工具去弄吧(selenium之類),
為什么心里會涼呢?因為我覺得,這些模塊,應該是一個模塊一個資料包吧!!!
給我看傻了都,四個大label,每個大label里面還有好幾個小label,然后小label里面還有下拉框,我的天哪!!!
就在我絕望之際,我還是點開了它的資料包,我想,就讓我最后看一眼吧,我的天哪,
好,這么一看,就一個大label一個包?這么多資料就一個包?好極,
死灰復燃了,
分析json包
在這方面,我不得不說,火狐還是有它的優勢在里面的,看一下:技術類崗位資料包

這是火狐的,
跟網頁對比一下,來看里面的那些元素分別是什么意思吧,
可以看到,所有的資料都在 JoinResultDtoList 里面,
(這里記得把轉義字符自行轉換)
title:崗位方向
rrCount:投遞錄用比
desc:崗位描述
request:崗位需求
workcity:據我分析啊,是這個樣子的:
1、深圳總部
2、北京
3、上海
4、廣州
5、成都
8、合肥
11、杭州
招聘城市:遠程
其他三個包我都看過了,各位自取咯,
獲取資料并簡單處理
接下來,就是把資料拿下來處理了(簡陋了點,我得去休息了):
import requests
import json
user_agent=[
# 請自己放上十幾個頭
'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:85.0) Gecko/20100101 Firefox/85.0'
]
list_urls=[]
def geturl():
page = requests.get("https://join.qq.com/api/v1/jobDetails/getJobDetailsByPidAndTid?timestamp=1611742780882&pid=2&tid=2")
html = page.text
print(type(html))
jhtml = json.loads(html)
print(jhtml['data'])
print(type(jhtml))
for data in jhtml['data']:
print(data)
geturl()
各位盡請發揮,
整完之后記得存起來,可以參照我pandas的第二篇:pandas做資料存盤


轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/253491.html
標籤:python
下一篇:爬蟲403 被服務器拒絕
