最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python爬蟲headers設(shè)置后無效的解決方法

 更新時間:2017年10月21日 15:13:22   作者:返回主頁 Jacck  
這篇文章主要為大家詳細(xì)介紹了python爬蟲headers設(shè)置后無效的解決方案,具有一定的參考價值,感興趣的小伙伴們可以參考一下

此次遇到的是一個函數(shù)使用不熟練造成的問題,但有了分析工具后可以很快定位到問題(此處推薦一個非常棒的抓包工具fiddler) 

正文如下:

在爬取某個app數(shù)據(jù)時(app上的數(shù)據(jù)都是由http請求的),用Fidder分析了請求信息,并把python的request header信息寫在程序中進(jìn)行請求數(shù)據(jù)

代碼如下

import requests
url = 'http://xxx?startDate=2017-10-19&endDate=2017-10-19&pageIndex=1&limit=50&sort=datetime&order=desc'

headers={
 "Host":"xxx.com",
 "Connection": "keep-alive",
 "Accept": "application/json, text/javascript, */*; q=0.01",
 "User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.59 Safari/537.36",
 "X-Requested-With": "XMLHttpRequest",
 "Referer": "http://app.jg.eastmoney.com/html_Report/index.html",
 "Accept-Encoding": "gzip,deflate",
 "Accept-Language": "en-us,en",
 "Cookie":"xxx"
}
r = requests.get(url,headers)
print (r.text)

請求成功但是,返回的是

{"Id":"6202c187-2fad-46e8-b4c6-b72ac8de0142","ReturnMsg":"加載失敗!"}

就是被發(fā)現(xiàn)不是正常請求被攔截了

然后我去Fidder中看剛才python發(fā)送請求的記錄 #蓋掉的兩個部分分別是Host和URL。

然后查看請求詳細(xì)信息的時候,請求頭并沒有加載進(jìn)去,User-Agent就寫著python-requests !   #請求頭里的UA信息是java,python程序,有點反爬蟲意識的網(wǎng)站、app都會攔截掉

Header詳細(xì)信息如下

GET http://xxx?istartDate=2017-10-19&endDate=2017-10-19&pageIndex=1&limit=50&sort=datetime&order=desc
  &Host=xxx.com
  &Connection=keep-alive
  &Accept=application%2Fjson%2C+text%2Fjavascript%2C+%2A%2F%2A%3B+q%3D0.01
  &User-Agent=Mozilla%2F5.0+%28Windows+NT+6.1%3B+WOW64%29+AppleWebKit%2F537.36+%28KHTML%2C+like+Gecko%29+Chrome%2F29.0.1547.59+Safari%2F537.36
  &X-Requested-With=XMLHttpRequest
  &Referer=xxx
  &Accept-Encoding=gzip%2Cdeflate
  &Accept-Language=en-us%2Cen
  &Cookie=xxx
HTTP/1.1


Host: xxx.com
User-Agent: python-requests/2.18.4
Accept-Encoding: gzip, deflate
Accept: */*
Connection: keep-alive


HTTP/1.1 200 OK
Server: nginx/1.2.2
Date: Sat, 21 Oct 2017 06:07:21 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 75
Connection: keep-alive
Cache-Control: private
X-AspNetMvc-Version: 5.2
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET

一開始還沒發(fā)現(xiàn),等我把請求的URL信息全部讀完,才發(fā)現(xiàn)程序把我的請求頭信息當(dāng)做參數(shù)放到了URL里

那就是我請求的時候request函數(shù)Header信息參數(shù)用錯了

又重新看了一下Requests庫的Headers參數(shù)使用方法,發(fā)現(xiàn)有一行代碼寫錯了,在使用request.get()方法時要把參數(shù) “headers =“寫出來 

更改如下:

import requests
url = 'http://xxx?startDate=2017-10-19&endDate=2017-10-19&pageIndex=1&limit=50&sort=datetime&order=desc'

headers={
 "Host":"xxx.com",
 "Connection": "keep-alive",
 "Accept": "application/json, text/javascript, */*; q=0.01",
 "User-Agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.59 Safari/537.36",
 "X-Requested-With": "XMLHttpRequest",
 "Referer": "http://app.jg.eastmoney.com/html_Report/index.html",
 "Accept-Encoding": "gzip,deflate",
 "Accept-Language": "en-us,en",
 "Cookie":"xxx"
}
r = requests.get(url,headers=headers)

然后去查看Fiddler中的請求。

此次python中的請求頭已經(jīng)正常了,請求詳細(xì)信息如下

GET http://xxx?startDate=2017-10-19&endDate=2017-10-19&pageIndex=1&limit=50&sort=datetime&order=desc HTTP/1.1
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.59 Safari/537.36
Accept-Encoding: gzip,deflate
Accept: application/json, text/javascript, */*; q=0.01
Connection: keep-alive
Host: xxx.com
X-Requested-With: XMLHttpRequest
Referer: http://xxx
Accept-Language: en-us,en
Cookie: xxx


HTTP/1.1 200 OK
Server: nginx/1.2.2
Date: Sat, 21 Oct 2017 06:42:21 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 75
Connection: keep-alive
Cache-Control: private
X-AspNetMvc-Version: 5.2
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET

然后又用python程序請求了一次,結(jié)果請求成功,返回的還是

{"Id":"6202c187-2fad-46e8-b4c6-b72ac8de0142","ReturnMsg":"加載失敗!"} 

因為一般cookie都會在短時間內(nèi)過期,所以更新了cookie,然后請求成功

需要注意的是用程序爬蟲一定要把Header設(shè)置好,這個app如果反爬的時候封ip的話可能就麻煩了。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python?BeautifulSoup4實現(xiàn)數(shù)據(jù)解析與提取

    Python?BeautifulSoup4實現(xiàn)數(shù)據(jù)解析與提取

    Beautiful?Soup是一個Python的庫,用于解析HTML和XML文檔,提供了方便的數(shù)據(jù)提取和操作功能,下面小編就來和大家詳細(xì)聊聊如何利用BeautifulSoup4實現(xiàn)數(shù)據(jù)解析與提取吧
    2023-10-10
  • python錯誤調(diào)試及單元文檔測試過程解析

    python錯誤調(diào)試及單元文檔測試過程解析

    這篇文章主要介紹了python錯誤調(diào)試及單元文檔測試過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-12-12
  • Python代碼風(fēng)格與編程習(xí)慣重要嗎?

    Python代碼風(fēng)格與編程習(xí)慣重要嗎?

    實現(xiàn)高內(nèi)聚,低耦合、結(jié)構(gòu)清晰不臃腫、可讀性高、數(shù)據(jù)冗余性低、高復(fù)用、易擴(kuò)展的代碼,并非易事.上到設(shè)計模式,下到某個類、方法、函數(shù)的構(gòu)造.在這里我分享一下我自己的代碼設(shè)計,編寫風(fēng)格,讓我們互相學(xué)習(xí),需要的朋友可以參考下
    2021-06-06
  • Python的SimpleHTTPServer模塊用處及使用方法簡介

    Python的SimpleHTTPServer模塊用處及使用方法簡介

    這篇文章主要介紹了Python的SimpleHTTPServer模塊用處及使用方法簡介,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • 基于python OpenCV實現(xiàn)動態(tài)人臉檢測

    基于python OpenCV實現(xiàn)動態(tài)人臉檢測

    這篇文章主要為大家詳細(xì)介紹了基于python OpenCV實現(xiàn)動態(tài)人臉檢測,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • 利用Python上傳日志并監(jiān)控告警的方法詳解

    利用Python上傳日志并監(jiān)控告警的方法詳解

    這篇文章將詳細(xì)為大家介紹如何通過阿里云日志服務(wù)搭建一套通過Python上傳日志、配置日志告警的監(jiān)控服務(wù),感興趣的小伙伴可以了解一下
    2022-05-05
  • 解決python對齊錯誤的方法

    解決python對齊錯誤的方法

    在本篇文章里小編給大家整理的是關(guān)于python對齊錯誤的解決方法,需要的朋友們可以參考學(xué)習(xí)下。
    2020-07-07
  • python關(guān)鍵字傳遞參數(shù)實例分析

    python關(guān)鍵字傳遞參數(shù)實例分析

    在本篇文章里小編給大家整理的是一篇關(guān)于python關(guān)鍵字傳遞參數(shù)實例分析內(nèi)容,有需要的朋友們可以學(xué)習(xí)參考下。
    2021-06-06
  • 使用Python+selenium實現(xiàn)第一個自動化測試腳本

    使用Python+selenium實現(xiàn)第一個自動化測試腳本

    這篇文章主要介紹了使用Python+selenium實現(xiàn)第一個自動化測試腳本,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • Python爬蟲DOTA排行榜爬取實例(分享)

    Python爬蟲DOTA排行榜爬取實例(分享)

    下面小編就為大家?guī)硪黄狿ython爬蟲DOTA排行榜爬取實例(分享)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06

最新評論

柞水县| 稻城县| 鸡泽县| 湟中县| 华阴市| 梅河口市| 和平区| 寿宁县| 于田县| 安新县| 濮阳县| 元谋县| 大宁县| 新兴县| 华亭县| 涟水县| 英山县| 开远市| 楚雄市| 独山县| 遂宁市| 剑阁县| 资源县| 邵武市| 栾城县| 永靖县| 普格县| 鄂州市| 大邑县| 山东省| 民权县| 南康市| 苏尼特左旗| 郧西县| 壶关县| 札达县| 隆回县| 佛教| 珠海市| 东光县| 富顺县|