《Python網(wǎng)絡(luò)爬蟲》1.5 Requests庫使用實(shí)例

By 一頁編程


下面以幾個(gè)例子來熟悉一下Requests庫的使用知市,至于說怎么能夠從返回的信息中解析返回的內(nèi)容,那是我們后面將要講的內(nèi)容驾诈。

爬取京東商品頁面

這里面我們選取的是華為的一款手機(jī)歌憨,看下面代碼:

import requests
url = "https://item.jd.com/3888278.html"
try:
    r = requests.get(url)
    r.raise_for_status()
    r.encoding = r.apparent_encoding
    print(r.text[:1000])
except:
    print("爬取失敗")

上述代碼可以正常返回HTML數(shù)據(jù),比較簡單柄瑰,沒有任何問題。

百度搜索關(guān)鍵詞提交

百度搜索剪况,大家都知道教沾,有沒有可能用程序自動(dòng)的向這個(gè)搜索引擎提交個(gè)關(guān)鍵詞,并且獲得它的搜索結(jié)果呢译断?
我們?cè)诎俣入S便搜索一個(gè)關(guān)鍵詞授翻,然后查看URL,可以很容易的得到百度搜索的接口:

http://www.baidu.com /s?wd= keyword

只要我們替換keyword就可以向搜索引擎提交關(guān)鍵詞了孙咪。下面我們用requests庫來實(shí)現(xiàn)這個(gè)代碼堪唐,以搜索”Python“關(guān)鍵詞為例。

import requests
keyword = "python"
url = "https://www.baidu.com/s"
try:
    kv = {'wd': keyword}
    r = requests.get(url, params = kv)
    r.raise_for_status()
    r.encoding = r.apparent_encoding
    print(r.text[:1000])
except:
    print("爬取失敗")

其他搜索引擎和百度的搜索方法很類似翎蹈,大家可以嘗試一下淮菠。

網(wǎng)絡(luò)圖片的爬取和存儲(chǔ)

首先,我們看一下網(wǎng)絡(luò)上圖片鏈接的格式杨蛋。網(wǎng)絡(luò)上圖片鏈接基本都是這樣一個(gè)格式:

http://www.example.com/picture.jpg

比如我們隨便在網(wǎng)上找到一個(gè)圖片兜材,右鍵點(diǎn)擊屬性,就可以看到圖片的真實(shí)地址:http://image.nationalgeographic.com.cn/2017/0403/20170403115136772.jpg

20170403115136772.jpg

我們?nèi)绾瓮ㄟ^圖片URL逞力,把它保存到本地呢曙寡?
我們知道返回的圖片信息是一個(gè)二進(jìn)制格式文件,也就是Response對(duì)象的content屬性寇荧,我們把二進(jìn)制形式寫入到文件就可以了举庶,下面看代碼:

import requests
path = "D:/picture.jpg"
url = "http://image.nationalgeographic.com.cn/2017/0403/20170403115136772.jpg"
r = requests.get(url)
with open(path, 'wb') as f:
    f.write(r.content)

通過這樣的方式,我們就把網(wǎng)上的圖片保存到了D盤揩抡,文件名為picture.jpg户侥。
這段代碼雖然可以實(shí)現(xiàn)我們的想法镀琉,但是有很多問題,比如沒有異常處理蕊唐、文件沒有關(guān)閉屋摔、不能用原始文件名保存圖片等,下面我們給出優(yōu)化后的代碼:

import requests
import os
url = "http://image.nationalgeographic.com.cn/2017/0403/20170403115136772.jpg"
root = "D://pics//"
path = root + url.split('/')[-1]
try:
    if not os.path.exists(root):
        os.mkdir(root)
    if not os.path.exists(path):
        r = requests.get(url)
        with open(path, 'wb') as f:
            f.write(r.content)
            f.close()
            print("文件保存成功")
    else :
        print("文件已存在")
except:
    print("爬取失敗")

事實(shí)上替梨,除了圖片排序之外钓试,網(wǎng)上有很多的資源,都是類似的url格式副瀑,比如說網(wǎng)上的一個(gè)視頻弓熏,比如說網(wǎng)上的一個(gè)音樂,比如說網(wǎng)上的一個(gè)動(dòng)畫等等糠睡,我們可以用這個(gè)代碼去修改挽鞠,能夠獲取網(wǎng)絡(luò)上得很多的不同的資源。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末狈孔,一起剝皮案震驚了整個(gè)濱河市信认,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌除抛,老刑警劉巖狮杨,帶你破解...
    沈念sama閱讀 206,311評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異到忽,居然都是意外死亡橄教,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門喘漏,熙熙樓的掌柜王于貴愁眉苦臉地迎上來护蝶,“玉大人,你說我怎么就攤上這事翩迈〕只遥” “怎么了?”我有些...
    開封第一講書人閱讀 152,671評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵负饲,是天一觀的道長堤魁。 經(jīng)常有香客問我,道長返十,這世上最難降的妖魔是什么妥泉? 我笑而不...
    開封第一講書人閱讀 55,252評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮洞坑,結(jié)果婚禮上盲链,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好刽沾,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,253評(píng)論 5 371
  • 文/花漫 我一把揭開白布本慕。 她就那樣靜靜地躺著,像睡著了一般侧漓。 火紅的嫁衣襯著肌膚如雪锅尘。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,031評(píng)論 1 285
  • 那天火架,我揣著相機(jī)與錄音鉴象,去河邊找鬼。 笑死何鸡,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的牛欢。 我是一名探鬼主播骡男,決...
    沈念sama閱讀 38,340評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼傍睹!你這毒婦竟也來了隔盛?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,973評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤拾稳,失蹤者是張志新(化名)和其女友劉穎吮炕,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體访得,經(jīng)...
    沈念sama閱讀 43,466評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡龙亲,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,937評(píng)論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了悍抑。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片鳄炉。...
    茶點(diǎn)故事閱讀 38,039評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖搜骡,靈堂內(nèi)的尸體忽然破棺而出拂盯,到底是詐尸還是另有隱情,我是刑警寧澤记靡,帶...
    沈念sama閱讀 33,701評(píng)論 4 323
  • 正文 年R本政府宣布谈竿,位于F島的核電站,受9級(jí)特大地震影響摸吠,放射性物質(zhì)發(fā)生泄漏空凸。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,254評(píng)論 3 307
  • 文/蒙蒙 一蜕便、第九天 我趴在偏房一處隱蔽的房頂上張望劫恒。 院中可真熱鬧,春花似錦、人聲如沸两嘴。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽憔辫。三九已至趣些,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間贰您,已是汗流浹背坏平。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評(píng)論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留锦亦,地道東北人舶替。 一個(gè)月前我還...
    沈念sama閱讀 45,497評(píng)論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像杠园,于是被迫代替她去往敵國和親顾瞪。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,786評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容