爬蟲第二課requests模組

2021-09-29 03:56:23 字數 2521 閱讀 3509

斐波那契數列指的是這樣乙個數列:1、1、2、3、5、8、13、21、34、……在數學上,斐波那契數列以如下被以遞推的方法定義:f(1)=1,f(2)=1, f(n)=f(n-1)+f(n-2)(n>=3,n∈n*)

def f(n):

if n 1 or n2:

return 1

return f(n-1)+f(n-2)

求乙個list的最大值和最小值,用遞迴的方法。返回值是乙個元組,(max,min)

def

my_maxmin

(l):

​ if

len(l)

<=0:

​ print

('輸入有誤!列表不能為空!'

)​ return

none

​ return maxmin(l,0,

len(list_)-1

))​ def

maxmin

(l,start,end)

:​ if end-start <=2:

​ return

(max

(l[start]

,l[end]),

min(l[start]

,l[end]))

​ max1,min1 = maxmin(l,start,

(start+end)//2

)​ max2,min2 = maxmin(l,

(start+end)//2

+1,end)

​ return

(max

(max1,max2)

,min

(min1,min2)

)list_ =[11

,22,43

,-10,

33,28,

90]print

(maxmin(list_,0,

len(list_)-1

))

步驟:

1.導包

import requests

2、確定請求的url

base_url = ''

3.傳送請求,獲取響應。

response = requests.get(

url = base_url,#請求的url

headers={},請求頭

params = {},請求引數字典

)4.response這個物件包含的內容都有以下幾個:

(1)狀態碼:

response.status_code

(2)響應頭

response.headers['cookie']

(3)響應正文

1.獲取字串型別的響應正文

response.text

2.獲取bytes型別的響應正文

response.content

3.響應正文本串編碼

response.encoding

(4)響應內容的亂碼問題:

當我們用response.text獲取字串的響應正文的時候,有時候會出現亂碼:

原因是response.encoding這個字段預設指定編碼有誤。

解決辦法就是你手動指定

response.encoding = 『utf-8』

另一種辦法:

response.content.decode('utf-8')

get請求的專案類別:

user-agent這個請求頭就可以了。

基礎url就是問號以前包括問號的內容。

設定請求引數字典:

params =

方法:1.先找出分頁的規律。一般是通過params引數中的其中乙個引數來控制的。

2.找到這個引數每一頁的規律。

3.用for迴圈來請求每一頁的內容。

​ response = requests.post(

​ url,

​ headers = {},

​ data={},請求資料字典

​ )​ post請求一般得到響應內容是json資料。

​ 處理json資料用到的模組就是json模組。

​ json資料就是本質上就是字串。

​ json.dumps(python的list或者dict)---->(返回值)---->json字串。

​ json.loads(json字串)------>(返回值)----->python的list或者dict.

​response.json()---->可以直接將獲取到的json字串轉化成python的list或者dict.

處理post請求的請求引數怎麼解決換了請求引數就請求不到的問題?

也就是post請求的內容主要解決請求引數,就可以獲取資料了。

思路就是

1、比對。比對data字典,哪些引數是不一樣的。

2.想辦法找到這些引數的生成原理。

一些引數可以存放:

1.頁面中。–都是固定寫死。

2.js中動態生成引數。

3.可以通過ajax來獲取一些

爬蟲第二課 handler,cookie

handlerimport urllib.request proxy handler urllib.request.proxyhandler opener urllib.request.build opener proxy handler response opener.open print res...

第二課 安裝PHP

為什麼要安裝php?php是伺服器端解析程式,一般執行在網路伺服器上。而編寫php語言的程式我們一般是在自己的個人電腦上完成,然後拿到伺服器上除錯。所以,學習php首先要讓我們的個人電腦模擬伺服器執行環境,讓php能象在伺服器上一樣在我們的個人電腦上執行。這就是為什麼要安裝配置php的原因。安裝配置...

csdn之旅 第二課

1.html標題的標籤 1 注意 只能到,在往後就沒有作用了。2 標籤特點 可以區別其他文字,比如可以加粗 效果圖如 笑對生活!笑對生活!笑對生活!笑對生活!改變字型大小 可以自動換行 2.html段落標記 用元素 注意 標籤和標籤之間的關係 可以巢狀使用 但不可以交叉 3.html常用標記 單標記...