2 johnkris JohnKris 于 2016.03.01 14:54 提问

python 模拟登录知乎,登录不成功

import urllib2
import urllib
import cookielib
import ssl

filename = 'cookie.txt'
cookie = cookielib.MozillaCookieJar(filename)
handler = urllib2.HTTPCookieProcessor(cookie)
opener = urllib2.build_opener(handler)

postData = urllib.urlencode({
'account':'krishna_liang@163.com',
'password':'1liangwei',
'_xsrf':'0764ca863ddcde749667d4aedd21d341',
'remember_me':True
})
ssl._create_default_https_context = ssl._create_unverified_context
loginUrl = 'http://www.zhihu.com/login/email'
try:
result = opener.open(loginUrl,postData)
except urllib2.HTTPError,e:
print e.code
except urllib2.URLError,e:
print e.reason
else:
print "OK"

#print result.read()
cookie.save(ignore_discard=True,ignore_expires=True)
gradeUrl = 'https://www.zhihu.com'
result = opener.open(gradeUrl)
print result.read()


result = opener.open(loginUrl,postData)这句总是输入“OK”
读到的网页内容,也总是登录那一页,求教怎么才能模拟登录成功?

2个回答

devmiao
devmiao   Ds   Rxr 2016.03.02 19:34
oyljerry
oyljerry   Ds   Rxr 2016.03.02 19:33

你提交的http数据应该还要不对的地方 所有zhihu没有通过

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
python-知乎模拟登录
本篇文章用于记录如何实现知乎模拟登录本篇采用firefox浏览器,按F12开发者工具来进行HTTP交互的获取和分析。需要设置开发者工具中的preserve log选项,否则会因为HTTP交互过多,无法参考中间过程的HTTP请求和回应登录知乎,通过开发者工具来查看HTTP交互,发现实际的登录地址为https://www.zhihu.com/login/email. 这是我们使用email进行登录,如果
Python模拟登陆新版知乎
目前网上很多模拟登录知乎的代码已经无法使用,即使是二、三月的代码也已经无法模拟登陆知乎,所以我现在将新版知乎的模拟登录代码和讲解发布出来。 零、开发环境 开发工具:Pycharm Python版本:3.6 运行环境:Win10 一、代码和讲解 # 利用requests 模拟登陆 import requests import http.cookiejar as cookiel...
新版知乎模拟登录
新版知乎的模拟登录实现,只是实现了登录,并没有爬取具体的数据
利用python requests库模拟登陆知乎
当初搜模拟登陆的时候在知乎上也找到一些内容。 以下是代码 import requests import time import json import os import re import sys import subprocess from bs4 import BeautifulSoup as BS class ZhiHuClient(object): """连接知乎的工具
使用Python模拟登录知乎
小试牛刀:使用Python模拟登录知乎 Posted on 2016-11-05   |   In Spider   |     |   views : 1610 最近突然对爬虫兴趣倍增,主要是自己想从网上爬点数据来玩玩。前阵子从某房屋出售网爬取了长沙地区的房价以及2016年的成交额,只有几千条数据,量较少,没劲o(╯□╰)o,因此将目标成功地转移到了社交网上,难度显然大了点
Python网络爬虫之模拟登录(以知乎为例)
实践模拟登陆知乎
爬虫模拟登录知乎
分析内容知乎登陆网址 https://www.zhihu.com/#signin用错误的账号密码登录,通过抓包软件查看 https://www.zhihu.com/login/email是邮箱登录,需要的参数有四个分别是:_xsrf、password、captcha_type和email _xsrf为跨站请求伪造(Cross-site request forgery),也叫跨域攻击,跨域攻击
python--python3爬虫之模拟登录知乎
代码在python3环境下测试通过: from bs4 import BeautifulSoup import requests url = 'http://www.zhihu.com' login_url = url+'/login/email' captcha_url = 'http://www.zhihu.com/captcha.gif' headers={ 'Accep
用scrapy 模拟知乎的登录过程
首先,我们分析下知乎登陆的接口,打开浏览器,到知乎的登陆界面,随便输入一个账号密码,查看点击登陆它干了些什么(别输入正确的,不然他就跳到首页去啦~) 可以看到它调用了一个phone_num的接口(邮箱登陆同理就不演示了),再看下这个接口的参数 出了那个_xsrf外,其他参数根据名字大概都可以猜到了 我们先来看看这个_xsrf从哪里来的
Python爬虫模拟登录失败,重定向到登录页面解决方法。
今天尝试模拟登录一个网站,由于要爬的页面必须登录才能访问,所以我用requests.Session()来保持Cookie,再访问要爬的页面。但是这个爬虫有时模拟登录成功,有时失败,很奇怪。测试是否登录成功的代码片段如下: account_page = 'https://example.com/mypage' response = session.get(account_page) ...