国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

基于python 爬蟲爬到含空格的url的處理方法

2020-01-04 15:07:11
字體:
來源:轉載
供稿:網友

道友問我的一個問題,之前確實沒遇見過,在此記錄一下。

問題描述

在某網站主頁提取url進行迭代,爬蟲請求主頁時沒有問題,返回正常,但是在訪問在主頁提取到的url時出現了400狀態碼(400 Bad Request)。

結論

先貼出結論來,如果url里有空格的話,要把空格替換成%20,也就是url編碼,否則就會出現400。

解決過程

首先百度了一下400狀態碼什么意思:

400頁面是當用戶在打開網頁時,返回給用戶界面帶有400提示符的頁面。其含義是你訪問的頁面域名不存在或者請求錯誤。

主要有兩種形式:

1、bad request意思是“錯誤的請求”;

2、invalid hostname意思是”不存在的域名”。

所以說問題應該是出在了url上,我懷疑是他的url提取邏輯有問題,于是讓他把url打印一下看看,他說看不出什么問題。

然后我就把他代碼要了過來,自己調調試試,發現前幾個子url是訪問正常的,但是其中一個出現了400,那個url如下:

http://www.qichacha.com/company_getinfos?unique=4d5ad1bc15ddc4ad9873e5b0ff4f93d3&companyname=意大利C.D.VIDEO S.P.A.深圳代表處&tab=base

下面是一個訪問正常的url:

http://www.qichacha.com/company_getinfos?unique=f6aa78d2e9f4b0bc98103785f96c1353&companyname=深圳市聯得自動化裝備股份有限公司&tab=base

我首先把這個url復制到瀏覽器,發現可以正常訪問,然后就留神了一下瀏覽器上url的變化,發現空格變成了%20,在代碼里把url中的空格都替換成%20后,

程序訪問也正常了。

問題解決。

啟示

以后做爬蟲,對于不可預測的不規律的請求,在發請求之前先把url進行url編碼,以免出現這種錯誤。

這篇基于python 爬蟲爬到含空格的url的處理方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到python教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 永胜县| 浮山县| 综艺| 河南省| 揭阳市| 美姑县| 稻城县| 古蔺县| 合阳县| 金湖县| 紫云| 沛县| 通化市| 定襄县| 郎溪县| 宁河县| 宜丰县| 菏泽市| 保定市| 贞丰县| 合阳县| 九江市| 泰宁县| 沂源县| 德兴市| 诏安县| 尼勒克县| 鸡东县| 九江县| 新河县| 灵武市| 安图县| 琼海市| 彰武县| 绩溪县| 洱源县| 黔南| 岗巴县| 勃利县| 即墨市| 娄烦县|