内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

python如何爬取ajax-創(chuàng)新互聯(lián)

小編給大家分享一下python如何爬取ajax,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),鳳泉企業(yè)網(wǎng)站建設(shè),鳳泉品牌網(wǎng)站建設(shè),網(wǎng)站定制,鳳泉網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,鳳泉網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。

使用python包:requests。

具體方法:

首先是定義自己headers,注意headers里面的User-Agent這一字段可以根據(jù)自己需求設(shè)計一個列表,用于隨機(jī)調(diào)換。

ajax數(shù)據(jù)的網(wǎng)頁特點:NetWork中的XHR網(wǎng)絡(luò)流中有一些ajax請求,其中它們request_url必定是一個ajax請求接口,并且headers里面的referer是其跳轉(zhuǎn)前的url,在構(gòu)造自己的headers的時候需要設(shè)置referer字段。

以拉勾網(wǎng)主頁搜索“java”為例:

python如何爬取ajaxajax數(shù)據(jù)的抓取爬蟲和普通的網(wǎng)頁爬取多了一個url,一個是referer的url,放置于headers中。另外一個就是ajax_url,這個也是主要訪問url。

最重要的一點,ajax一般返回json數(shù)據(jù),所以抓取下來的數(shù)據(jù)解析形式有所不同。直接將結(jié)果集轉(zhuǎn)換成json結(jié)果集即可,訪問方式就是普通字典、列表訪問形式。

另外一個就是訪問參數(shù),若請求中帶有param,就將其構(gòu)造。若沒有可忽略。本例中有參數(shù),注意參數(shù)字典構(gòu)造方法

下面就展示出來一個簡單的完整代碼

from urllib.request import quote,unquote
import random
import requests
 
keyword = quote('java').strip()
print(keyword, type(keyword))
city = quote('鄭州').strip()
print(unquote(city))
 
refer_url = 'https://www.lagou.com/jobs/list_%s?city=%s&cl=false&fromSearch=true&labelWords=&suginput=' % (keyword, city)
ajax_url = 'https://www.lagou.com/jobs/positionAjax.json?city=%s&needAddtionalResult=false' %city
user_agents=[
    'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',
    'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36',
    'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 Edge/16.16299',
]
 
data ={
    'first': 'true',
    'pn': '1',
    'kd': keyword,
}
headers={
    'Accept': 'application/json, text/javascript, */*; q=0.01',
    'Accept-Encoding': 'gzip, deflate, br',
    'Accept-Language': 'zh-CN,zh;q=0.9',
    'Connection': 'keep-alive',
    'Content-Length': '46',
    'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
    'Host': 'www.lagou.com',
    'Origin': 'https://www.lagou.com',
    'Referer': refer_url,
    'User-Agent': user_agents[random.randrange(0,3)],
    'X-Anit-Forge-Code': '0',
    'X-Anit-Forge-Token': 'None',
    'X-Requested-With': 'XMLHttpRequest',
}
resp = requests.post(ajax_url,data=data, headers=headers)
 
result = resp.json()
print(result)
# print(result)
#result 就是最終獲得的json格式數(shù)據(jù)
item = result['content']['positionResult']['result'][0]
print(item)
#item就是單個招聘條目信息
print("程序結(jié)束")

看完了這篇文章,相信你對python如何爬取ajax有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

分享標(biāo)題:python如何爬取ajax-創(chuàng)新互聯(lián)
本文網(wǎng)址:http://www.rwnh.cn/article20/cejejo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、響應(yīng)式網(wǎng)站用戶體驗、移動網(wǎng)站建設(shè)、品牌網(wǎng)站建設(shè)網(wǎng)站收錄

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)
西充县| 崇礼县| 阜新| 买车| 桑日县| 金秀| 娄烦县| 青冈县| 麟游县| 永登县| 沐川县| 西丰县| 义乌市| 乐昌市| 兴安县| 广昌县| 东乡县| 建水县| 沅江市| 淳化县| 禹城市| 延长县| 保山市| 肥东县| 抚州市| 巴塘县| 万荣县| 大冶市| 迁西县| 普宁市| 郸城县| 隆子县| 钟祥市| 襄垣县| 商南县| 虎林市| 丰顺县| 乐平市| 岳普湖县| 荣成市| 格尔木市|