我們的目標**是這個登入頁面是這個
import搜尋我們使用request的session來儲存會話並且進入登入頁面,他是這樣的requests
import
json
url = '
'headers =
session =requests.session()
html = session.get(url=url,headers=headers)
我們先來獲取驗證碼,直接通過html.text來獲取是找不到他裡面的的url的。
<html.text這裡面是沒有src的,他是渲染出來的, 所有我們去找這個js,發現他的函式就在login.js裡面。div
class
="form-group"
>
<
label
for="logincaptcha"
>驗證碼
label
>
<
div
class
="code-group02"
>
<
input
type
="text"
class
="form-control"
name
="login[captcha]"
v-model
="login.captcha"
id="logincaptcha"
autocomplete
="off"
placeholder
="驗證碼"
>
<
img
class
="captcha"
v-on:click
="oncaptcha"
id="logincaptchaimg"
>
div>
div>
oncaptcha: function(e), function(response));在login.js我們可以找到這個,可以發現他是通過ajax給/site/captcha?refresh=true傳送獲取到資料然後將裡面的response.body.url也就是驗證碼的url設定給src標籤。
我們找一下site/captcha?refresh=true這個的包,就是『這個url。他裡面的內容是這樣
然後我們看到裡面的url,其實他就是驗證碼的url。既然我們找到的url就簡單了,將他儲存下來然後手動檢視輸入驗證碼即可。全部**在這import大概步驟是先請求登入頁面,然後通過抓包找到url,接著提交請求。requests
import
json
url = '
'headers =
session =requests.session()
html = session.get(url=url,headers=headers)
url1 = '
'headers[
'referer
'] =url
html = session.get(url=url1,headers=headers)
img =json.loads(html.text)
url2 = '
'+ img['
url'
]img = session.get(url=url2)
with open(
'img.png
','wb
') as f:
f.write(img.content)
img = input('
請輸入驗證碼')
data =
url='
'data_headers =
html = session.post(url=url,headers=data_headers,data=data)
url='
/'html = session.get(url=url,headers=headers)
(html)
print(html.text)
ssh非手工輸入密碼
工作的時候程序需要手工去check伺服器的執行狀況,有的時候要check很多臺,手工的話,就很繁瑣,而且也容易出錯。我就想著寫乙個指令碼來完成,想法是指令碼通過ssh連上遠端伺服器,然後執行命令,返回結果。但是發現需要乙個乙個輸入密碼,這也很鬱悶,網上找了找,發現可以新增認證關係,但是如果手工一台一...
手工實現LinkedList
參照其底層 按照自己的理解實現了linkedlist的一些基本功能。如果對c和c 指標了解一下,理解起來非常快。package cn.liu.mylinkedlist 結點 public class node 構造器,來傳資料 public node object element package c...
kmeans手工實現
演算法原理 kmeans的計算方法如下 1 隨機選取k個中心點 2 遍歷所有資料,將每個資料劃分到最近的中心點中 3 計算每個聚類的平均值,並作為新的中心點 4 重複n次,直到這k個中心點不再變化 收斂了 或執行了足夠多的迭代 實現 import math import random class c...