日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Python使用爬蟲猜密碼

系統 1832 0

我們可以通過python 來實現這樣一個簡單的爬蟲猜密碼功能。下面就看看如何使用python來實現這樣一個功能。

Python使用爬蟲猜密碼_第1張圖片

這里我們知道用戶的昵稱為:heibanke

密碼是30以內的一個數字,要使用requests庫循環提交來猜密碼

主要需要用到的庫是requests庫

安裝requests庫

復制代碼 代碼如下:

pip install requests

要使用到的request庫的功能是表單的提交

復制代碼 代碼如下:

requests.post(url,data)#通過post()語言向網址url發生data

首先查看網頁源碼,找到需要提交的內容的參數名稱

?

復制代碼 代碼如下:

可以看到需要提交的昵稱的name=“username”,密碼的name=“password”

requests傳入網址的data中中需要包含這兩個參數

            
url = "http://www.heibanke.com/lesson/crawler_ex01/"
params = {'username':'heibanke','password': str(password)}
r = requests.post(url,data=params)
          

建立循環,密碼從1開始猜,不對就+1,直至猜中。

關鍵在于如何判斷猜錯了沒?

首先看看猜錯了的顯示:

?

我們可以讀取出該頁面的文字,檢測文字中有沒有"錯誤"二字,有就代表提交的密碼錯誤,沒有就表示正確。要實現此功能,需要用到find()函數

find()函數介紹:

函數原型:find(str, pos_start, pos_end)

解釋:

?str:被查找“字串”
?pos_start:查找的首字母位置(從0開始計數。默認:0)
?pos_end: 查找的末尾位置(默認-1)

返回值:如果查到:返回查找的第一個出現的位置。否則,返回-1。

example:

            
str = "0123"
print str.find("2",1,-1) #2
print str.find("1") #0,首次出現的位置
          

完整程序:

            
import requests
password=0
while True:
url = "http://www.heibanke.com/lesson/crawler_ex01/"
params = {'username':'heibanke','password': str(password)}
r = requests.post(url,data=params)
          
            
if r.text.find(u"錯誤")>0:#判斷某次輸入是否正確
password=password+1
else:
print password#,最后打印出password為6,居然輸入06,006,0006都是對的
break
          


運行結果password為6


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 麻栗坡县| 三亚市| 康乐县| 新宾| 凤台县| 咸阳市| 吉水县| 峨边| 米易县| 自治县| 高雄市| 兴文县| 津市市| 石家庄市| 吉木乃县| 湘潭市| 涿州市| 濮阳市| 库车县| 巴东县| 隆子县| 姜堰市| 和平县| 台江县| 辉县市| 蒙山县| 泾川县| 镇原县| 聂拉木县| 韩城市| 揭阳市| 田阳县| 荆门市| 章丘市| 定远县| 交口县| 天镇县| 东兰县| 娄烦县| 玛沁县| 米脂县|