环境:python3.6.1 + lxml4.0.0 + requests2.18.4

坑一:登陆时请求的网址需要构造,数据在form标签属性里,
坑二:表单数据的提取
坑三:登陆后的跳转,不然无法访问个人主页

import requests
from lxml import etree#设置session
s=requests.Session()#基础参数
url='https://passport.csdn.net'
headers={'Host':'passport.csdn.net',
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:55.0) Gecko/20100101 Firefox/55.0',
'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'Accept-Language':'zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3',
'Referer': 'https://passport.csdn.net/?service=http://write.blog.csdn.net/postedit'
}#抓取post参数和jsessionid
f=s.get(url,headers=headers).content.decode('utf-8')
p=etree.HTML(f)
it=p.xpath("//input[@name='lt']/@value")
exe=p.xpath("//input[@name='execution']/@value")
eventId=p.xpath("//input[@name='_eventId']/@value")
jid=p.xpath("//form/@action")
jid=str(jid[0])#提取postdata#
d={'username':'leiyang_ace@163.com','password':'1005931665asd'}
d['lt']=str(it[0])
d['execution']=str(exe[0])
d['_eventId']=str(eventId[0])
#构造post url
url=url+jid#进行登陆
gg=s.post(url,data=d,headers=headers)
#重定向
tt=s.get("http://www.csdn.net/")
print(tt.status_code)
#进入个人主页
hh=s.get("http://write.blog.csdn.net/postlist").content.decode('utf-8')
print(hh)

利用requests 模拟登陆csdn相关推荐

  1. python项目实战:模拟登陆CSDN

    2019独角兽企业重金招聘Python工程师标准>>> 前言 今天为大家介绍一个利用Python模拟登陆CSDN的案例,虽然看起来很鸡肋,有时候确会有大用处,在这里就当做是一个案例练 ...

  2. requests模拟登陆 + 验证码

    requests模拟登陆 + 验证码 文章目录 @[toc] 1.requests的高级应用 ~ 会话维持 2.打码平台 3.云打码平台接口使用 4.动态传参与模拟登陆 昨日回顾: 多线程爬虫: ​ ...

  3. 模拟登陆CSDN——就是这么简单

    工具介绍 本篇文章主要是讲解如何模拟登陆CSDN,使用的工具是HttpClient+Jsoup 其中HttpClient主要是负责发送请求,而Jsoup主要是解析HTML 你可能对HttpClient ...

  4. 模拟登陆CSDN -- Python爬虫练习之正则表达式和cookie

    这周学习的主题是正则表达式和cookie,原本是计划每天晚上11点下班到家,练上一两个钟就把这部分过了,结果这周各种事情和不再状态,所以没整完,直至今天才把相关问题过掉.其实这部分也挺不错的,也并没有 ...

  5. requests模拟登陆 验证码

    文章目录 1.requests的高级应用 ~ 会话维持 2.打码平台 3.云打码平台接口使用 4.隐藏参数与模拟登陆 1.requests的高级应用 ~ 会话维持 # 利用Session对象发送get ...

  6. 利用cookie模拟登陆知乎

    我们知道一些网站是需要账号密码才可以登陆的,例如知乎.而利用requests库里的get方法的headers参数可以达到这个目的 首先在知乎的网页上登陆自己的知乎账号,利用chrome的开发者工具(F ...

  7. Python + Requests 模拟登陆(含验证码)

    其实模拟登陆非常简单,只要在打开网站的同时提交数据就可以了. 下面通过登陆超星网来举例说明如何一步步实现模拟登陆. 1.获取需要提交的数据 使用chrome的Network或者fiddler可以很轻易 ...

  8. superagent post php,Node爬虫——利用superagent模拟登陆

    一.概述 最近学习了node,试着写了个爬虫,这是模拟登陆的一部分. 1.需要的工具 2.superagent用法的简述 3.抓包分析 4.最小示例 二.需要的工具 nodejs,superagent ...

  9. selenium 原理应用 - 利用 requests 模拟 selenium 驱动浏览器

    前言 selenium 是一个 Web 自动化测试的开源框架,它支持多语言:python/java/c#- 前面也有一篇文章说明了,selenium+ 浏览器的环境搭建. selenium 支持多语言 ...

最新文章

  1. 人工大脑项目 —— Nengo
  2. const在C与C++中的区别
  3. 评论:索尼爱立信能否重振雄风?
  4. 网络管理服务器规格型号,H3C vLNS系列虚拟L2TP网络服务器 配置指导-E1116-5W101
  5. AWR 报告深度解读:Redo Nowait指标的算法和诊断
  6. 催护 ---- 题都城南庄
  7. 分布式 和 集群的区别
  8. 哪些NPM仓库更易遭供应链攻击?研究员给出了预测指标
  9. 带你细品Cookie、Session和Token的区别
  10. NVIDIA英伟达控制面板打不开解决办法win10
  11. PYTHON Image Module中Pix[x,y]详解
  12. Linux | 记一次Linux服务器被入侵后的检测过程
  13. 表达式计算器-iExpr
  14. html 设置两个标签的相对距离_HTML 让上下两个DIV之间保持一定距离或没有距离...
  15. CentOS.7卸载与安装Nvidia Driver
  16. Hadoop 中的数据类型
  17. C++中两个unsigned型数值相减
  18. 英语总结系列(二十三):Baby上海一月游
  19. 会计税务一键式统计2.0_按照内容锁定动态锁定工作薄,待更新
  20. 【C++】类与对象——第3小节——string 类

热门文章

  1. 数字化转型导师坚鹏:美的集团数字化转型案例研究
  2. 下载网页图片-批量下载网页图片软件免费
  3. 数字IC设计工具教程——VCS常用命令
  4. XDown 2.0.2.3中文版:小编自用款mac下载工具
  5. 【Windows Server 2019】活动目录 (Active Directory) ——安装Acitve Directory域服务和提升为域控制器
  6. B2C商城网站建设的四大关键点
  7. 每天定时获取必应每日一图并保存做壁纸
  8. python关系运算符有哪些_Python漫谈-关系(比较)运算符 - Silvia@Thu
  9. 什么是数据库方言?为什么要配置数据库方言?
  10. 机器视觉——OpenCV案例分析基础(二)(给图片打马赛克与图像的运算处理)