更全面的尋找post位址

2022-05-11 19:19:57 字數 2044 閱讀 9451

我們在今後的爬蟲學習過程中,要爬許許多多的**。

比如,我訪問了乙個別的**,這兒用人人網做例子。

在人人網登陸介面,使用f12進入開發者模式,找到整個登陸介面的原始碼:

所以,我們可以看到關鍵的登入模組原始碼有乙個關鍵的引數,這個引數是action,儲存登陸的url位址。

action=""

在form表單中尋找action對應的url位址,post的資料是input標籤中的name的值作為鍵,真正的使用者名稱密碼作為值的字典。post的url位址就是action對應的url位址。

尋找post的資料,結合定位js:

1.在開發者模式中,選擇會觸發js時間的按鈕,點選event listener,找到js的位置。

2.通過chrome中的search all file來搜尋url中的關鍵字。

3.抓包,尋找登陸的url,反覆除錯對比,確定不會變的引數。

我們要養成乙個好的習慣,在敲**之前,我們要打出**的草稿如下:

def __init__(self): # 1.1 準備post的url位址,post_data

pass

def parse_url(self): # 1.2 傳送post的資料,獲取響應

pass

def get_ret(self): # 4.提取翻譯的結果

pass

def run(self): # 實現主要邏輯

pass

# 1.獲取語言型別

# 1.1 準備post的url位址,post_data

# 1.2 傳送post的資料,獲取響應

# 1.3 提取語言型別

# 2.準備post的資料

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

# 4.提取翻譯的結果

我們需要花很長時間想好主要邏輯,然後打上草稿,之後我們就可以一一詳細化,完成最終的**。

def __init__(self, trans_str): # 1.1 準備post的url位址,post_data

self.trans_str = trans_str

self.lang_detect_url = ""

self.headers =

# 1.2 傳送post的資料,獲取響應

lang = self.parse_url(self.lang_detect_url, lang_detect_data)["lan"]

# 1.3 提取語言型別

# 在網頁原始碼中檢視langdetect的response資料,在1.2末尾處加上乙個「lan」

# 2.準備post的資料

trans_data = if lang == "zh" else \

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

dict_respsonse = self.parse_url(self.trans_url, trans_data)

# 4.提取翻譯的結果

輸出結果:

翻譯的結果是: hello everyone!

這段**對比之前的**,得到的優化有:

①可以指定翻譯的初始語言和目標語言。

②實現的翻譯功能更加迅速。

速看!沒有比這更全面的 Firebase 介紹!

說到 firebase,這是乙個很長的 故事 所以我們打算分多次來講 在正式開始之前,先來看一下本次分享主要有哪些內容。第乙個當然是要先搞懂到底什麼是 firebase?然後看一下 firebase 到底有哪些特性?本文會列一些主要的特性,在 firebase 如何幫助我們開發應用 提高應用質量以及...

mysql時間轉換大全,這個更全面

date format 函式用於以不同的格式顯示日期 時間資料。date format date,format format引數的格式有 a 縮寫星期名 b 縮寫月名 c 月,數值 d 帶有英文本首的月中的天 d 月的天,數值 00 31 e 月的天,數值 0 31 f 微秒 h 小時 00 23 ...

識別敏感內容,郵件管控這樣做更全面!

郵件是企業內外溝通交流的重要工具,例如通過郵件與同事溝通工作問題,通過郵件與客戶交流等,然而隨著企業使用郵件的人員增多以及郵件管理的不規範,郵件使用也給企業的資訊保安帶來了很多的隱患。被疏忽的郵件安全 調查顯示,大約有74 的電郵安全事件是由於內部人員將機密資訊在沒有加密,並且失誤操作的情況下發送到...