學習筆記 12306 手動登入解析(1)

2021-08-10 04:29:28 字數 1177 閱讀 1070

#-*-coding:utf-8 -*-

import urllib2

import urllib

# 驗證碼登入同步

import cookielib

import ssl

#證書驗證

# 請求驗證碼

c=cookielib.lwpcookiejar()#生成乙個儲存cookie的物件

cookie=urllib2.httpcookieprocessor(c)#繫結

opener=urllib2.build_opener(cookie)

urllib2.install_opener(opener)

# opener繫結,用opener.open請求,自帶cookie,實現驗證碼與登陸同步

req=urllib2.request(""

"captcha-image?login_site=e&module="

"login&rand=sjrand&0.3835166812770916")

codeing=opener.open(req).read()#opener

fn=open('code/code.png','wb')

#儲存到本地

fn.write(codeing)

fn.close()

req=urllib2.request(''

'/captcha/captcha-check')

code=raw_input(">>")

data=

data=urllib.urlencode(data)#把字典型別轉變為查詢字串

html=opener.open(req,data=data).read()

print html

#登入req=urllib2.request(''

'/web/login')

data=

data=urllib.urlencode(data)

html=opener.open(req,data=data).read()

print html

輸入驗證碼位置,賬號密碼改為自己的就可以了。

>>258,44

Python ast 學習筆記1 手動建ast

python中的ast模組是非常強大的模組,可以用來修改python原始碼,或者分析python原始碼。為了學習ast模組,先來手動建立乙個ast熟悉熟悉。將用ast來表示下列 foo 2 if foo 2 print foo else print not equal foo 2是乙個賦值語句,可以...

(9) 手動實現reverse函式

簡單介紹5種實現方法 1.中心思想 從第乙個開始,相近的兩兩互換,然後除去最後乙個存入空列表,遞迴後相加 lists z v o b a def fz ls lsn global i if len ls 1 return ls for i in range len ls 1 ls i ls i 1 ...

Mysql 5 7 29 手動安裝

在win10下mysql安裝 配置環境變數 2 在d mysql 5.7.29 winx64目錄下新建my.ini檔案,複製如下內容 mysqld 設定3306端 port 3306 設定mysql的安裝目錄 basedir d mysql 5.7.29 winx64 設定mysql資料庫的資料的存...