Maison  >  Article  >  interface Web  >  Méthode de mise en œuvre de la connexion au code de vérification de contournement des cookies

Méthode de mise en œuvre de la connexion au code de vérification de contournement des cookies

小云云
小云云original
2018-01-24 14:10:594313parcourir

Cet article vous présente principalement comment contourner le code de vérification via les cookies. Aujourd'hui, je vais vous présenter en détail le code d'implémentation du cookie contournant la connexion au code de vérification. J'espère que cela aide tout le monde.


#coding:utf-8
'''
cookie绕过验证码登录,第一步先访问登录页面获取登录前的cookie,第二步
用fiddler抓到的手动登录的cookie加入cookie中,登录成功,第三步登录成功
后,添加新随笔保存为草稿
'''
import requests,re
requests.packages.urllib3.disable_warnings()
#打开登录
url = "https://passport.cnblogs.com/user/signin"
headers = {"User-Agent":"Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.104 Safari/537.36"}
#以下是需要关注的,首先用session保持会话
s = requests.session()
r = s.get(url,headers=headers,verify=False)
print(s.cookies)
#添加登录需要的两个cookie
c = requests.cookies.RequestsCookieJar()
c.set('.CNBlogsCookie','68C248862A9606EBEC754881843E0B126A133EA060D2A8D6F0F120D2BD8C5CB724DE4B12C94D851DC5603655C6C4452F86E345A7537A962EB84BDC6F907A6B8866B9690883AB4BCE702DF76BB340BD372BE67D32')
c.set('.Cnblogs.AspNetCore.Cookies','CfDJ8L5AbrwfmaJLh2XTSoqz06j4vYkUtvsRLF5ibGR_1Z7nRRfKuq9qMe5QGVDwXCroNvfWDjP8XW52IFzjSrfROTzyZ8KgiBupa8nabHR4n_fFMZMjCwwdocbCq8nKHR-7NvjA08dAFPE30In0-Nxs4v1KWNcj1X-9qEFmWM0zcYXaxoWeTxMFvSj0ZQusPpFMB6pNNclrgZ3rHyV_tFzdXvkHTXeTQm0CGsqr2LFBorOmh3YY_w9T45lKY-CcaVA9Yo-p3Bn--HxN8CDuxGJPfX7UWopmeo8r7yKlqs2JlSMv')
s.cookies.update(c)
print(s.cookies)
#登录成功后保存编辑内容
url2 = "https://i.cnblogs.com/EditPosts.aspx?opt=1"
body = {"__VIEWSTATE": "",
    "__VIEWSTATEGENERATOR":"FE27D343",
    "Editor$Edit$txbTitle":"这是绕过登录的标题:上海-悠悠",
    "Editor$Edit$EditorBody":"<p>这里是中文内容:http://www.cnblogs.com/yoyoketang/</p>",
    "Editor$Edit$Advanced$ckbPublished":"on",
    "Editor$Edit$Advanced$chkDisplayHomePage":"on",
    "Editor$Edit$Advanced$chkComments":"on",
    "Editor$Edit$Advanced$chkMainSyndication":"on",
    "Editor$Edit$lkbDraft":"存为草稿",
    }
r2 = s.post(url2,data=body,verify=False)
print(r2.content.decode(encoding=&#39;utf-8&#39;))#通过正则表达式获取保存编辑接口返回页面的内容,判断是否添加草稿成功
t = re.findall(r&#39;value="(.+?)" maxlength&#39;,r2.content.decode(encoding=&#39;utf-8&#39;))
print(t[0])
if t[0] == &#39;这是绕过登录的标题:上海-悠悠&#39;:
  print(&#39;True&#39;)
else:
  print(&#39;False&#39;)

Recommandations associées :

Détails sur la façon d'utiliser jQuery.cookie.js et les paramètres associés

Comment implémenter le cookie crypté jQuery

php implémente la page d'enregistrement de connexion des membres avec HTML plus Session et Cookie

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn