網路爬蟲二

2021-09-27 03:18:07 字數 2212 閱讀 1207

一、正規表示式

正規表示式(regular expression),又稱規則表示式,它是對字串操作的一種邏輯公式,即用事先定義好的一些特定字元以及這些特定字元的組合,組成乙個「規則字串」,這個「規則字串」用來表達對字串的一種過濾邏輯。電腦科學的乙個概念。正規表示式通常被用來檢索、替換那些符合某個模式(規則)的文字。簡單的說就是其中一種進行資料篩選的表示式。

二、正則能幹什麼?

快速高效的查詢和分析字串. 也可以用於驗證乙個字串是否符合某個給定的規則. 使用正規表示式,可以: 測試字串的某個模式。例如,可以對乙個輸入字串進行測試,看在該字串是否存在乙個**號碼模式或乙個信用卡號碼模式。1.驗證字串是否符合指定特徵,比如驗證是否是合法的郵件位址。2.用來查詢字串,從乙個長的文字中查詢符合指定特徵的字串,比查詢固定字串更加靈活方便。3.用來替換,比普通的替換更強大。

三、正則的組成單位

由原子組成,是正規表示式中最基本的組成單位,每個正規表示式中至少要含有乙個原子。

四、那些可以作為原子

分為四種:1.普通字元作為原子  2.非列印字元作為原子3.通用字元作為原子4.原子表

1.普通字元作為原子

import re

string="beijingshanghai"

#普通字元作為原子

pat="bei"

#正規表示式函式

hello=re.search(pat,string)

print(hello)

執行結果(提取bei)

import re

string="beijingshanghai"

#普通字元作為原子

pat="beiy"

#正規表示式函式

rst=re.search(pat,string)

print(rst)

執行結果(沒有beiy)

2.非列印字元作為原子

import re

string='''beijingshang

hai'''

#普通字元作為原子

pat="\n"

#正規表示式函式

rst=re.search(pat,string)

print(rst)

執行結果(存在換行符)

import re

string='''beijingshanghai'''

#普通字元作為原子

pat="\n"

#正規表示式函式

rst=re.search(pat,string)

print(rst)

執行結果(不存在換行符)

3.通用字元作為原子

\w 字母、數字、下劃線

\w 除字母、數字、下劃線

\d 十進位制數字

\d 除十進位制數字

\s 空白字元

\s 除空白字元

如果在beijing4 56289tianmazo提取兩個數字

import re

string='''beijing4 56289tianmazo'''

pat="\d\d"

rst=re.search(pat,string)

print(rst)

執行結果(提取出來了第乙個兩個數字)

如果在beijing4 56289tianmazo提取兩個數字後前乙個字母

import re

string='''beijing45 6289tianmazo'''

pat="\w\d\d"

rst=re.search(pat,string)

print(rst)

執行結果

4.原子表

import re

#原子表

string='''beijing513464shanghai'''

pat="bei[j]in"

rst=re.search(pat,string)

print(rst)

執行結果

網路爬蟲二

網路抓取系統分為核心和擴充套件元件兩部分。核心部分是乙個精簡的 模組化的爬蟲實現,而擴充套件部分則包括一些便利的 實用性的功能。目標是盡量的模組化,並體現爬蟲的功能特點。這部分提供簡單 靈活的api,在基本不改變開發模式的情況下,編寫乙個爬蟲。擴充套件元件部分提供一些擴充套件的功能,內建了一些常用的...

網路爬蟲(二)

爬取海王電影20180101 20190101影評 import json import time from datetime import datetime,timedelta import requests 傳送請求,獲取響應 defget data url headers response r...

python網路爬蟲(二)

在第一篇中,我們介紹了如何進行發起乙個http請求,並接受響應。在這一部分中,我們介紹一下如何解析網頁並提取我們需要的資料。我們採用requests這個庫進行乙個網頁請求。r requests.get headers,kwargs 通過這一句 我們即可獲得伺服器傳給我們的響應內容 不考慮連線錯誤等情...