python網絡爬蟲之入門(requests模塊)[一]

@tochtml

前言

hello,接下來就學習如何使用Python爬蟲功能。java

在接下來的章節中能夠給你們整理一個完整的學習要點,固然都是一個簡單的知識點,python

喔,本人認爲就是一個入門,不會講的特別深刻,由於接下來的一章中可能有多個知識點,網絡

不過自主的學習纔是王道ide

奧力給!!! 廢話很少說,先整理一下本次內容:工具

一、探討什麼是python網絡爬蟲? 二、一個針對於網絡傳輸的抓包工具fiddler 三、學習request模塊來爬取第一個網頁學習


1、探討什麼是python網絡爬蟲?

相信你們若是是剛學python或是剛學java的各位來講的話,必定會有來自靈魂深處的四問。。。網站

我是誰?,我在那?.....額,不是編碼

咳咳,是這個: 一、什麼是網絡爬蟲? 二、爲何要學網絡爬蟲? 三、網絡爬蟲用在什麼地方? 四、網絡爬蟲是否合法?url

喲西,放馬過來,一個一個來。 一、什麼是網絡爬蟲?

若是說網絡就是一張網的話,那麼網絡爬蟲就是能夠在網上獲取食物的蜘蛛(spider) 在這裏插入圖片描述 二、爲何要學網絡爬蟲?

這個的話,就感受是在問你爲何要學習python同樣。。(~ ̄▽ ̄)~

嘛,總的來講就是教你能夠在網上爬取到什麼樣的數據以及學到神馬東西。

在這裏插入圖片描述

三、網絡爬蟲用在什麼地方?

額,用在什麼地方,什麼地方都能用到哦,好比:在找工做的時候把全部的招聘信息爬取下來,而後再本身慢慢解析,又好比:爬取某些網站的圖片.....

在這裏插入圖片描述 四、網絡爬蟲是否合法?

enn,先說好啊,本章博客是用來學習博客,不會用來作任何商業用途

在這裏插入圖片描述

五、最後說一下,接下來會學習的內容,不過可能會有些變更

在這裏插入圖片描述

let`go


2、一個針對於網絡傳輸的抓包工具fiddler

這個我就不講了,由於以前作過之類的博客。額,有不懂的能夠私信

直接上傳送門:Fiddler抓包工具

3、學習request模塊來爬取第一個網頁

喔,由於我沒有整理其餘的好比:python解釋器的安裝之類的,額,不懂的暫時先能夠去看看基礎之類的。

python入門【一】 這個內容可能比較的枯燥啊。

一、下載requesets模塊 在這裏插入圖片描述 沒有的話就下載 在這裏插入圖片描述

二、對網頁的解析(百度www.baidu.com)

按F進入坦克...

額,不是 按F12進入開發者模式

在這裏插入圖片描述 搜索"中國"

在這裏插入圖片描述

三、開始爬取(嘿嘿,由於本人感受一個一個放上去忒麻煩了吧,一張圖給你解決)

其實有不少註解了的,多看看,固然對一個網頁的分析尤其重要 在這裏插入圖片描述

具體代碼實現:

import requests



# 標明要請求的路徑
url = "http://www.baidu.com/s?"
headers = {
    "Cookie": "BAIDUID=BB84703BA1CB50B295F2E42435DF6A4F:FG=1; BIDUPSID=BB84703BA1CB50B295F2E42435DF6A4F; PSTM=1570674385; BD_UPN=12314753; ispeed_lsm=2; BDUSS=VpqdTlafmxiM28zVktufnBvQkJCc3l-OUtMemFsR0NFSFBkRzVvbWF6UTZqZmRkSVFBQUFBJCQAAAAAAAAAAAEAAAD~lxnTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADoA0F06ANBdb; pgv_pvi=5531878400; COOKIE_SESSION=98297_6_9_8_4_26_0_3_8_7_10_8_18582_21681_0_0_1574259377_1574259241_1574591094%7C9%2321663_55_1574259212%7C9; BD_HOME=1; H_PS_PSSID=1427_21090_29567_29221_26350"
    ,
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)"
    , "Host": "www.baidu.com"
}

params = {
    "wd": "中國"
}

# 獲得請求後的響應
response = requests.get(url,params=params,headers=headers)

response.encoding = "UTF-8"
print(f"響應的編碼:{response.encoding}")

print(f"響應的狀態碼:{response.status_code}")
print(response.text)


with open("中國.html", "w", encoding="UTF-8") as f:
    f.write(response.text)

* 擴展內容(爬取top250的網頁)

由於重點代碼都在上面講了,因此就放如何解析網頁; 在這裏插入圖片描述

第一頁的數據 在這裏插入圖片描述 第一頁的猜想網址:結果沒問題。 在這裏插入圖片描述

能夠直接點擊第二頁就看看網址, 而後就能夠分析分析網址了 在這裏插入圖片描述 因此咱們的一個代碼就是這個

"""
爬取豆瓣電影TOP250,分頁保存電影數據
"""
import requests
import time


headers = {
    "User-Agent": "Opera/9.80 (Windows NT 6.0) Presto/2.12.388 Version/12.14"
}

for i in range(10):
    url = f"https://movie.douban.com/top250?start={i*25}"
    response = requests.get(url, headers=headers, verify=False)
    print(response.status_code)
    if response.status_code == 200:
        # 獲取網頁數據
        with open(f"第{i+1}頁.txt", "w", encoding="UTF-8") as f:
            f.write(response.text)
            print(f"{url} 保存成功")
    time.sleep(2)

後記

爬蟲重點在於分析

若是感受本章寫的還不錯的話,不如。。。。。(~ ̄▽ ̄)~ ,(´▽`ʃ♡ƪ)

原文出處:https://www.cnblogs.com/liwangwang/p/11977110.html

相關文章
相關標籤/搜索