Python爬蟲中SSL JS加密 Ajax使用

2021-09-26 05:12:15 字數 2590 閱讀 5354

from urllib import request

import ssl

# 利用非認證上下文環境替換認證的上下文環境

破解有道詞典

'''from urllib import request, parse

defyoudao

(key)

: url =

""data =

# 引數data需要是bytes格式

data = parse.urlencode(data)

.encode(

) headers =

req = request.request(url=url, data=data, headers=headers)

rsp = request.urlopen(req)

html = rsp.read(

).decode(

)print

(html)

if __name__ ==

'__main__'

: youdao(

"boy"

)

'''

處理js加密**

''''''

通過查詢,能找到js**中操作**

1. 這個是計算salt的公式 r = "" + ((new date).gettime() + parseint(10 * math.random(), 10));

2. sign: n.md5("fanyideskweb" + t + r + "ebsefb%=xz%t[kz)c(sy!");

md5一共需要四個引數,第乙個和第四個都是固定值的字串,第三個是所謂的salt,第二個是。。。。。

第二個引數就是輸入的要查詢的單詞

'''def

getsalt()

:'''

salt公式是: "" + ((new date).gettime() + parseint(10 * math.random(), 10));

把他翻譯成python**

:return:

'''import time, random

salt =

int(time.time()*

1000

)+ random.randint(0,

10)return salt

defge***5

(v):

import hashlib

md5 = hashlib.md5(

)# update需要一共bytes格式的引數

md5.update(v.encode(

"utf-8"))

sign = md5.hexdigest(

)return sign

defgetsign

(key, salt)

: sign =

'fanyideskweb'

+ key +

str(salt)

+"ebsefb%=xz%t[kz)c(sy!"

sign = ge***5(sign)

return sign

from urllib import request, parse

defyoudao

(key)

: url =

""salt = getsalt(

) data =

print

(data)

# 引數data需要是bytes格式

data = parse.urlencode(data)

.encode(

) headers =

req = request.request(url=url, data=data, headers=headers)

rsp = request.urlopen(req)

html = rsp.read(

).decode(

)print

(html)

if __name__ ==

'__main__'

: youdao(

"boy"

)

'''

爬去豆瓣電影資料

了解ajax的基本爬去方式

'''from urllib import request

import json

url =

""rsp = request.urlopen(url)

data = rsp.read(

).decode(

)data = json.loads(data)

print

(data)

Python爬蟲實戰JS逆向AES逆向加密爬取

目錄 監管平台 開發工具 pycharm 開發環境 python3.7,wi程式設計客棧ndows10 使用工具包 requests,aes,json 涉及aes對稱加密問題 需要 安裝node.js環境 使用npm install 安裝 crypto js 確定資料 在這個網頁可以看到資料是動態返...

python抖音加密引數 抖音爬蟲API加密引數

使用nodejs在做抖音資料的抓取,發現對應的api位址 現了乙個signature,見樣例 這個signature的加密函式找到了,但是有加密和混淆,有哪位清楚原理的可以提供下思路 m.define douyin falcon node modules byted acrawler dist ru...

Python 爬蟲中遇到的反爬蟲問題

源 一般會有下面幾種限制 1 一定時間內單個ip訪問次數,乙個正常使用者訪問 除非是隨意的點著玩,否則不會在一段持續時間內過快訪問乙個 持續時間也不會太長,我們可以採用大量不規則 ip形成乙個執行緒池,隨機從 池中選擇 模擬訪問。有兩種,透明 和匿名 2 一定時間內單個賬號訪問次數,如果乙個人一天2...