python爬取toefl_spark學習進度6-Python爬取數據的四個簡單實例

今天本來想把昨天安裝的intellij配置好,但是一直顯示沒有網絡,網上查了相關資料也沒有查出來解決辦法。

1279451-20200206232220306-165530488.png

然后暫停了intellij的配置,開始做了幾個Python爬取簡單數據的實例,先做了幾個最簡單的,以后再加大難度(用idle編碼):

(1)京東商品頁面爬取:

鏈接:https://item.jd.com/2967929.html

1279451-20200206233036245-1945687924.png

代碼解析:

首先r是一個response對象;

r.status_code返回一個值,如果是200的話則正常,如果時候503的話,則拋出異常,調用該方法的目的是查看返回的response對象是否正確;

r.encoding是返回編碼信息,如果編碼為gbk則表示這個網站提供了頁面信息的相關編碼;

(2)亞馬遜商品頁面的爬取:

1279451-20200206234613628-1884573304.png

r.status_code返回值為503,說明請求沒有得到正確的答復,這時,查看我們訪問的http的頭可知我們告訴了亞馬遜網站我們是用Python的requests庫來訪問的,并且亞馬遜拒絕了爬蟲的訪問,所以,這時我們更改了我們的頭部信息,讓爬蟲模擬一個瀏覽器來訪問,把user-agent更改為Mozolla/5.0就可以成功的訪問了。

(3)百度搜索關鍵詞提交:

1279451-20200207000125997-1309680718.png

1279451-20200207001028774-849233105.png

百度對關鍵詞的搜索提供了接口:http://www.baidu.com/s?wd=keyword。所以這時利用了params,將鍵字對輸入進去,但是這里當我查詢url時,并沒有正常顯示,百度利用安全認證,我把http的頭部更改為Mozilla/5.0也不起作用,還未解決。

(4)網絡圖片的爬取和存儲:

1279451-20200207001727454-120308200.png

只適用于最簡單的圖片爬取,如https://gss2.bdstatic.com/fo3dSag_xI4khGkpoWK1HF6hhy/baike/c0%3Dbaike80%2C5%2C5%2C80%2C26/sign=c9162213c4fcc3cea0cdc161f32cbded/279759ee3d6d55fb3cfdd81761224f4a20a4ddcc.jpg。

結尾是圖片文件的形式,r.content是返回內容的二進制形式,所以用write方法寫入文件中,形成jpg文件。open函數中的‘wb’是指打開文件的模式,相關模式含義如下表:

1279451-20200207003348116-355692659.png

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/454428.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/454428.shtml
英文地址,請注明出處:http://en.pswp.cn/news/454428.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Django REST framework 版本

API 版本控制允許我們在不同的客戶端之間更改行為(同一個接口的不同版本會返回不同的數據)。 DRF提供了許多不同的版本控制方案。 可能會有一些客戶端因為某些原因不再維護了,但是我們后端的接口還要不斷的更新迭代,這個時候通過…

AngularJS中的過濾器(filter)

AngularJS中的過濾器是用于對數據的格式化,或者篩選的函數,可以直接通過以下語法使用: {{expression|filter}} {{expression|filter1|filter2}} {{expression|filter1:param1,param2,...|filter2} 過濾器的種類有number,currency&…

計算機考試上傳照片教程,電腦照片傳到iPhone手機的詳細步驟【圖文】

蘋果自帶的iOS系統是不可以隨便和電腦進行數據交換的,必須使用iTunes軟件。許多用戶為此問題困擾,我們有什么可以把電腦照片傳到iPhone手機?下面我們就一起來看看把電腦照片傳到iphone設備的詳細步驟。具體方法如下:1,…

javaweb 導出文件名亂碼的問題解決方案

fileName new String(fileName.getBytes("ISO8859-1"), "UTF-8"); 或者 String finalFileName null; if(StringUtils.contains(userAgent, "MSIE")){//IE瀏覽器 finalFileName URLEncoder.encode(fileName,"UTF8"); }else if(Str…

AVS 分像素運動估計優化算法

—249—AVS 分像素運動估計優化算法楊涵悅 1,張兆楊1,滕國偉2(1. 上海大學通信學院,上海 200072;2. 上海廣電(集團)有限公司中央研究院,上海 200233)摘要:針對AVS 分像素運動估計的問題,提出一種…

計算機系統結構sw指令集,自考02325計算機系統結構復習資料六

自考生網為考生收集整理了“自考02325計算機系統結構復習資料六“以供考生們在考試前用復習資料鞏固所學到的知識,得到更好地復習效果。注:由于各省教材每年都有更新、變動,自考復習資料并不一定出于同一自考教材版本,但考生們仍可…

Django REST framework 源碼中提供的默認配置

DEFAULTS 是默認配置,IMPORT_STRINGS 是要相對應導入的類 鍵 大寫大寫大寫 ########################### settings.py ########################## DEFAULTS {# Base API policiesDEFAULT_RENDERER_CLASSES: (rest_framework.renderers.JSONRenderer,rest_framew…

python 去掉空格_如何從Python DataFrame中去除空格在這個例子中

使用applymap到數據幀,applymap施加一拉每個單元格上的mbda函數。在lambda函數中拆分字符串(白色空格在其中被忽略)然后加入它。如果有一個int,那么你可以在lambda函數中使用if else。 from pandas import Series, DataFrame impo…

Mware HA實戰攻略之五VMwareHA測試驗收

【IT168 專稿】在上一篇"VMware HA實戰攻略之四VMwareHA安裝及配置"中(點擊),講述了VMwareHA的概念及創建過程,還講述了創建過程中要注意的一些事項。在本篇中,將要講述如何在群集節點之一的ESX主機上安裝虛…

AVS解碼器在DSP平臺上的優化

AVS( Audio Video Coding STandard)是由我國數字 音視頻標準工作組制定的具有自主知識產權的第二代音視頻壓縮準。AVS實行1 元專利費用的原則,相比其它音視頻編解碼標準具有編碼效率高、專利費用低、授權模式簡單等優勢。AVS 解碼器的結構復雜、運算量較大&#xff…

如何重做計算機系統軟件,電腦卡如何一鍵重做Win7旗艦版

電腦卡如何一鍵重做Win7旗艦版?小伙伴們在使用電腦的過程中系統會越來越卡,對于新手小白來說怎么重裝系統是一個比較煩惱的問題,不知道如何下手,從哪里開始,那么接下來就以云騎士裝機大師為例給小伙伴們講解一下電腦卡…

Django Rest framework Request

[Django Rest framework文檔翻譯]-Request REST framework的Request類擴展自標準的HttpRequest,增加了REST framework靈活的請求解析和請求驗證支持。 請求解析 REST framework的Request對象提供了靈活的請求解析,讓你可以像一般處理普通form數據一樣…

python去停用詞用nltk_【NLTK】安裝和使用NLTK分詞和去停詞

黃聰:PythonNLTK自然語言處理學習(一):環境搭建 http://www.cnblogs.com/huangcong/archive/2011/08/29/2157437.html 安裝NLTK可能出現的問題: 1. pip install ntlk 2. 如果遇到缺少stopwords報錯如下:&am…

JavaScript知識概要

JavaScript 1.簡介 JavaScript簡介: JS是運行在瀏覽器端的一門腳本語言,一開始主要用來做瀏覽器驗證,但現在功能已經不止于此。 所謂腳本語言就是指,代碼不需要編譯,直接運行,并且讀入…

計算機文檔xsl,XSL-FO 文檔

XSL-FO 文檔XSL-FO 文檔XSL-FO 文檔是帶有輸出信息的 XML 文件。XSL-FO 文檔存儲在以 .fo 或 .fob 為文件擴展名的文件中。您也可以把 XSL-FO 文檔存儲為以 .xml 為擴展名的文件,這樣做的話可以使 XSL-FO 文檔更易被 XML 編輯器存取。XSL-FO 文檔結構XSL-FO 的文檔結…

vue項目cordova打包的android應用

準備工作nodejs、cordova、AndroidStudio這些在上一篇文章中已經說過了,這里就不重復說明。以此文記錄vue項目用cordova打包移動app的方法。 1.創建一個cordova項目,如創建一個名為testapp的工程:cordova create testapp 2.添加安卓平臺 cord…

H.264視頻開發---代碼移植

基于DSP系統開發的視頻編解碼系統,國內幾乎都是走的移植,優化的路線,并且移植的代碼,都是開源的。畢竟花費大量的人力,物力去開發一套自己的代碼,并不見得比一些成熟的開源代碼效率更高,健壯性更…

Django REST framework 源碼解析

先放圖,放圖說話,可能有點長 主流程 這個顏色 從setting導入默認數據流程是 這個顏色 主流程大概流程寫一下:as_view 實際返回view,并把參數{"get":"list","post":"create"}傳遞給view…

-9 逆序輸出一個整數的各位數字_leetcode兩數相加(大整數相加)

題目來源于leetcode第二題兩數相加。題目描述給出兩個非空的鏈表用來表示兩個非負的整數。其中,它們各自的位數是按照逆序的方式存儲的,并且它們的每個節點只能存儲一位數字。如果,我們將這兩個數相加起來,則會返回一個新的鏈表來…

計算機如何添加管理員權限,電腦使用代碼如何添加管理員權限

我們在使用電腦運行某些軟件的時候,可能需要用到管理員權限才能運行,通常來說直接點擊右鍵就會有管理員權限,但最近有用戶向小編反饋,在需要管理員權限的軟件上點擊右鍵沒有看到管理員取得所有權,那么究竟該如何才能獲…