ホームページ  >  記事  >  バックエンド開発  >  Python でシミュレートされたログインを実装する 2 つの方法のコード例

Python でシミュレートされたログインを実装する 2 つの方法のコード例

黄舟
黄舟オリジナル
2017-08-10 14:18:361931ブラウズ

この記事では主に、Python での模擬ログインの 2 つの実装方法に関する関連情報を紹介します。1 つは通常の記述で記述され、もう 1 つは模擬ログイン後にのみコンテンツをキャプチャできます。必要な友達は、

Python でのシミュレートされたログインの 2 つの実装方法を参照してください

プロジェクトをクロールするときに、特定のコンテンツを表示するために特定の Web サイトにログインする必要がある場合があるため、シミュレートされたログイン機能が必要です。今回 Sanxian が書いた記事には主に 2 つの例があり、1 つは通常の書き方で書かれたもの、もう 1 つはオブジェクト指向で書いたものです。

模擬ログインの重要な点は、フォームの実際の送信アドレスを見つけて、Cookie を送信してデータを送信することです。ログインが成功する限り、他の Web ページにアクセスして Web ページのコンテンツを取得できます。

方法 1:


import urllib.request 
import urllib.parse 
import http.cookiejar 
#post的内容 
values={ 
'logon.x':'linke', 
'password':'xxxx', 
'username':'xxxxx' 
} 
 
#登陆的地址 
logUrl="http://192.168.32.112:8080/templates/index/hrlogon.do" 
 
#构建cook 
cook=http.cookiejar.CookieJar() 
 
#构建openner 
openner=urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cook)) 
 
#添加headers 
openner.addheaders = [('User-agent', 'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36')] 
 
r=openner.open(logUrl,urllib.parse.urlencode(values).encode()) 
 
#print(r.read().decode('gbk')) 
 
r=openner.open("http://192.168.132.62:8080/kq/kqself/card/carddata.do?b_query=link") 
 
print(r.read().decode('gbk'))

方法 2:


rree

以上がPython でシミュレートされたログインを実装する 2 つの方法のコード例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。