網頁一般由三部分組成,分別是 html(超文字標記語言)、css(層疊樣式表)和 jscript(活動指令碼語言)。
1)html
html 是整個網頁的結構,相當於整個**的框架。帶「<」、「>」符號的都是屬於 html 的標籤,並且標籤都是成對出現的。
2)css
css 表示樣式,圖 1 中第 13 行<style type="text/css">表示下面引用乙個 css,在 css 中定義了外觀。
3)jscript
jscript 表示功能。互動的內容和各種特效都在 jscript 中,jscript 描述了**中的各種功能。
2.1 爬蟲過程分為兩個環節
request (請求):
每乙個展示在使用者面前的網頁都必須經過這一步,也就是向伺服器傳送訪問請求。
response(響應):
伺服器在接收到使用者的請求後,會驗證請求的有效性,然後向使用者(客戶端)傳送響應的內容,客戶端接收伺服器響應的內容,將內容展示出來,就是我們所熟悉的網頁請求。
2.2 網頁請求的方式分為兩種
get:
相比 get 方式,多了以表單形式上傳引數的功能,因此除查詢資訊外,還可以修改資訊。
2.3 **示例:
import requests #匯入requests包
url =
''response = requests.get(url)
#get方式獲取網頁資料
print
(response.text)
#獲取網頁中的原始碼
3.1 beautiful soup :
從網頁中抓取資料。beautiful soup。目前已經被移植到 bs4 庫中,需要先安裝 bs4 庫,再匯入 beautiful soup 。
3.2 xml:
相比於 python 預設的解析器,lxml 庫具有功能更加強大、速度更快的特點,可以方便提取網頁原始碼資訊。
3.3 **示例:
import requests #匯入requests包
from bs4 import beautifulsoup
url=
''response=requests.get(url)
soup=beautifulsoup(response.text,
'lxml'
)#將複雜的 html 文件轉換成樹形結構
data = soup.select(
'#site-my-list > ul > li> a'
)#select(選擇器)定位資料,可在開發者模式下停留在對應資料上,然後右鍵『檢查』,對應的右側高亮資料,右鍵『copy』->'copy selector',即可複製路徑
print
(data)
4.1 re:
python 中呼叫正規表示式時使用 re 庫,對文字進行篩選和提取
4.2 **示例:
import re
import requests #匯入requests包
from bs4 import beautifulsoup
url=
''response=requests.get(url)
soup=beautifulsoup(response.text,
'lxml'
)#將複雜的 html 文件轉換成樹形結構
data = soup.select(
'#site-my-list > ul > li> a'
)for item in data:
result=
#re 庫的 findall 方法,第乙個引數表示正規表示式,第二個引數表示要提取的文字。'\d'匹配數字,'+'匹配前乙個字元1次或多次
print
(result)
python爬蟲入門教程
前言 在爬蟲系列文章 優雅的http庫requests 中介紹了 requests 的使用方式,這一次我們用 requests 構建乙個知乎 api,功能包括 私信傳送 文章點讚 使用者關注等,因為任何涉及使用者操作的功能都需要登入後才操作,所以在閱讀這篇文章前建議先了解python模擬知乎登入 現...
python爬蟲入門教程 Python 爬蟲介紹
一 什麼是爬蟲 爬蟲 一段自動抓取網際網路資訊的程式,從網際網路上抓取對於我們有價值的資訊。二 python爬蟲架構 網頁解析器 將乙個網頁字串進行解析,可以按照我們的要求來提取出我們有用的資訊,也可以根據dom樹的解析方式來解析。網頁解析器有正規表示式 直觀,將網頁轉成字串通過模糊匹配的方式來提取...
Python入門教程(1)
工作告一段落,開始寫入門python系列,這個系列時間跨度很長,原計畫是2016年7月份才正式學python的,結果最近來了乙個會python的同事,簡單的讓我入了門,所以先寫再說吧。按照習慣第一次輸入 hello world 完成第乙個python程式。操作符 加 減 乘 除 使用者輸入 inpu...