python登錄界面
A. 如何用python實現網頁自動登錄
這個你要用到BP,抓取數據包,通過分析數據包提交的表單,每次調用腳本的時候將表單進行提交,但一般這種可行比較低,看網頁的安全性做的如何,如果有驗證碼和token校驗的話你就不用試了。
B. 用python繪制一個「登錄」GUI界面,可以注冊和登錄,且有「取消」按鈕,可以清空輸入框中內容
python提供了多個圖形開發界面的庫,幾個常用Python GUI庫如下:
Tkinter:Tkinter模塊("Tk 介面")是Python的標准Tk GUI工具包的介面.Tk和Tkinter可以在大多數的Unix平台下使用,同樣可以應用在Windows和Macintosh系統里.,Tk8.0的後續版本可以實現本地窗口風格,並良好地運行在絕大多數平台中。
wxPython:wxPython 是一款開源軟體,是 Python 語言的一套優秀的 GUI 圖形庫,允許 Python 程序員很方便的創建完整的、功能鍵全的 GUI 用戶界面。
Jython:Jython程序可以和Java無縫集成。除了一些標准模塊,Jython使用Java的模塊。Jython幾乎擁有標準的Python中不依賴於C語言的全部模塊。比如,Jython的用戶界面將使用Swing,AWT或者SWT。Jython可以被動態或靜態地編譯成Java位元組碼。
1、導入Tkinter模塊
2、創建控制項
3、指定這個控制項的master, 即這個控制項屬於哪一個
4、告訴GM(geometry manager)有一個控制項產生了。
1 #!/usr/bin/python2 # -*- coding: UTF-8 -*-3 4 import Tkinter5 top = Tkinter.Tk()6 # 進入消息循環7 top.mainloop()
Tkinter 編程
Tkinter 是Python的標准GUI庫。Python使用Tkinter可以快速的創建GUI應用程序。
由於Tkinter是內置到python的安裝包中、只要安裝好Python之後就能import Tkinter庫、而且IDLE也是用Tkinter編寫而成、對於簡單的圖形界面Tkinter還是能應付自如。
創建一個GUI程序
實例:
C. appium 用python腳本在登錄時怎麼獲取點擊登錄按鈕後的界面進行判斷是否登錄成功了呢
其實就是檢查頁面某一固定的元素是否存在。
可以用assert斷言,當然也可以自己寫if語句進行判斷。
assert用得比較多,舉例說明:
例如,登錄成功後的界面,某個固定控制項包含字元串「aaa」,找到,則證明登錄成功。
assertEqual('aaa',driver.find_elements_by_class_name("android.widget.EditText").text)
assertEqual()只是其中一個方法。
斷言的用法還有很多,感興趣可以網路一下。
D. python用tkinter創建一個登錄界面
import tkinter
import tkinter.ttk
import tkinter.messagebox
root = tkinter.Tk()
root.title("登錄")
userlabel = tkinter.Label(root,text="用戶名:")
passwordlabel = tkinter.Label(root,text="密碼:")
userlabel.grid(row=0,column=0)
passwordlabel.grid(row=1,column=0)
userentry = tkinter.ttk.Entry(root)
passwordentry = tkinter.ttk.Entry(root,show="●")
userentry.grid(row=0,column=1,padx=10,pady=2)
passwordentry.grid(row=1,column=1,padx=10,pady=2)
def get():
tkinter.messagebox.showinfo("結果","用戶名:" + userentry.get() + "
密碼:" + passwordentry.get())
yes = tkinter.ttk.Button(root,text="確定",command=get)
yes.grid(row=2,column=1)
root.mainloop()
效果圖
E. python如何做界面
PyQt,一個基於Qt的Python介麵包,可以直接使用Qt的控制項,還可以使用QSS進行界面美化,下面我簡單介紹一下這個包的安裝和使用,實驗環境Win7+Python3.6+PyCharm5.0,主要內容如下:
1.首先,安裝PyQt,這個直接在cmd窗口輸入命令「pip install pyqt5」就行,如下,由於安裝包比較大,所以需要等待一會兒:
F. 怎樣用Python寫登錄頁面
#!/usr/bin/envpythondeflogin(username,password):
f=open("db",'r')#讀文件
forlineinf:
l1=line.split("|")ifl1[0]==usernameandl1[1]==password:returnTrue
returnFalsedefregedit(username,password):
f=open("db",'a')#a表示添加
temp=" "+username+"|"+password
f.write(temp)
f.close()defmain():
a=input("1:登陸,2:注冊")ifa=="1":
username=input("請輸入用戶名:")
password=input("請輸入密碼:")
r=login(username,password)ifr==True:
print("登陸成功")else:
print("登陸失敗")elifa=="2":
print("注冊")
user=input("請輸入用戶名:")
passwd=input("請輸入密碼:")
regedit(user,passwd)
main()
G. Python 爬取https的登錄界面,怎麼爬取成功,謝謝
之前寫的一直沒成功,原因是用的不是HTTPS相關的函數。這次仔細研究了一下,有幾個需要注意的點,一個是POST模擬登陸的時候,header中的cookie值,不同的網站應該會有不同的要求;另一個是GET頁面的時候,是需要加上POST得到的response中的set-cookie的。這樣才能利用登陸的成功。
寫完POST和GET頁面後,順便寫了個簡單的命令行實現。
importhttplib,urllib
importurllib2
importcookielib
importsys
file_text="build_change.txt"
resultTable=dict()
host='buuuuuuu.knight.com'
defLogin(username,password,csrf=''):
url='/login/'
values={
'username':username,
'password':password,
'next':'',
'csrfmiddlewaretoken':csrf,
}
headers={
'User-Agent':'Mozilla/5.0(WindowsNT6.1;WOW64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/35.0.1916.114Safari/537.36',
'Content-Type':'application/x-www-form-urlencoded',
'Connection':'keep-alive',
'Cookie':'csrftoken=%s'%csrf,
'Referer':'https://buuuuuuu.knight.com/login/',
'Origin':'https://buuuuuuu.knight.com',
'Content-Type':'application/x-www-form-urlencoded',
'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
}
values=urllib.urlencode(values)
conn=httplib.HTTPSConnection(host,443)
conn.request("POST",url,values,headers)
response=conn.getresponse()
print'Login:',response.status,response.reason
'''
hdata=response.getheaders()
foriinxrange(len(hdata)):
forjinxrange(len(hdata[i])):
printhdata[i][j],
'''
returnresponse.getheader("set-cookie")
defGetHtml(_url,cookie):
get_headers={
'Host':'xxxxx.knight.com',
'Connection':'keep-alive',
'Cache-Control':'max-age=0',
'Cookie':cookie,
'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
'User-Agent':'Mozilla/5.0(WindowsNT6.1;WOW64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/35.0.1916.114Safari/537.36',
'Accept-Language':'zh-CN,zh;q=0.8,en;q=0.6',
}
conn=httplib.HTTPSConnection(host)
conn.request("GET",_url,None,get_headers)
res2=conn.getresponse()
print"Get%s:"%_url,res2.status,res2.reason
'''
hdata1=res2.getheaders()
foriinxrange(len(hdata1)):
forjinxrange(len(hdata1[i])):
printhdata1[i][j],
'''
data=res2.read()
fp=open("build_change.txt","w")
fp.write(data)
fp.close()
defParseHtml():
fp=open(file_text,"r")
content=fp.readline()
_pos=0
whilecontent:
ifcontent.find("class="change-body"")>=0:
topic=content.split(">")
resultTable[_pos]=topic[1]
whilecontent:
content=fp.readline()
resultTable[_pos]=resultTable[_pos]+content
ifcontent.find("</div>")>=0:
_pos=_pos+1
break
content=fp.readline()
fp.close()
print"Parsehtmlsuccess."
defGenerateResultTxt():
f=open("build_change_result.txt","w")
forminresultTable.keys():
f.write("------------------------------------------------------------------------------------------- ")
f.write(resultTable[m])
f.close()
print"Generateresultsuccess:build_change_result.txt."
defHelp():
print'-h:help'
print'-u:username(must)'
print'-p:password(must)'
print'-c:csrftoken(optional)'
print'-s:sandboxbuildid(must)'
print'Forexample:'
print'[1]pythonBuildChange.py-h'
print'[2]pythonBuildChang.py-uu-pp-ss1s2'
print'[3]pythonBuildChang.py-uu-pp-cc-ss1s2'
defParseParam(com):
length=len(com)
username=""
password=""
csrf=""
sid1=""
sid2=""
iflength==2orlength==8orlength==10:
ifcom[1]=='-h':
Help()
foriinrange(1,length):
ifcom[i]=='-u'andi<(length-1):
username=com[i+1]
i+=1
elifcom[i]=='-p'andi<(length-1):
password=com[i+1]
i+=1
elifcom[i]=='-c'andi<(length-1):
csrf=com[i+1]
i+=1
elifcom[i]=='-s'andi<(length-2):
sid1=com[i+1]
sid2=com[i+2]
i+=2
ifusername==""orpassword==""orsid1==""orsid2=="":
print'[Error]Parametererror!'
print'[Error]Youcanuse"pythonBuildChange.py-h"toseehowcanusethisscript.'
else:
ifcsrf=="":
cookie=Login(username,password)
else:
cookie=Login(username,password,csrf)
_url="//changelog//between//%s//and//%s/"%(sid1,sid2)
GetHtml(_url,cookie)
ParseHtml()
GenerateResultTxt()
#C:Python27python.exeC:UsersknightDesktopuildBuildChange.py-uxux-pKKKKKKKK-s18594091858525
if__name__=="__main__":
ParseParam(sys.argv)
H. 如何利用python登錄知乎頁面
import requests
from bs4 import BeautifulSoup
s = requests.Session()
r = s.post('http://www.hu.com/login',
data={'_xsrf': BeautifulSoup(s.get('http://www.hu.com/').content).find(type='hidden')['value'],
'email': 'email', 'password': 'password', 'rememberme': 'y'})
print(r.text)
請善用第三方庫。
I. python登陸,為什麼總是跳轉不到登陸界面
自動化爬蟲類的不是很懂,不過感覺你找用戶登錄界面的用戶名登錄用的css選擇器有點問題,那個tj_login不是id。#u1 .lb這個能定位到那個a標簽。
J. 想用python編寫一個腳本,登錄網頁,在網頁里做一系列操作,應該怎樣實現
python編寫一個腳本的具體操作:
1、首先,打開python並創建一個新的PY文件。