工具:python3

步骤:

1)使用cookiejar.CookieJar()构建一个CookieJar()构建一个对象,用来保存cookie的值

2)使用HTTPCookieProcessor()构建一个处理器对象,用来处理cookie

3)使用build_opener构建自定义opener

4))使用opener的addheaders参数添加请求头参数

5)构造url和data

6)使用Request()构造请求

7)使用opener.open()发送请求

8)读取响应信息

import urllib.request
from http import cookiejar # 通过CookieJar()类构建一个cookieJar()对象,用来保存cookie的值
cookie = cookiejar.CookieJar() # 通过HTTPCookieProcessor()处理器类构建一个处理器对象,用来处理cookie
cookie_handler = urllib.request.HTTPCookieProcessor(cookie) # 构建一个自定义的opener
opener = urllib.request.build_opener(cookie_handler) # 通过opener的addheaders参数可以添加HTTP报头参数,参数为元组类型
opener.addheaders = [("User-Agent", "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36")] # renren网的登录接口
url = "http://www.renren.com/PLogin.do" # 需要登陆的账户密码
data = {"email":"xxx", "password": "xxx"} data = urllib.parse.urlencode(data)
# data = bytes(data, encoding="utf8") # 第一次是post请求,发送登陆需要的参数,获取cookie
request = urllib.request.Request(url, data=data) # 发送第一次的post请求,生成登录后的cookie
response = opener.open(request)
response = response.read()
response = response.decode("utf-8") with open("renren.html","w") as f:
f.write(str(response))

爬虫(cookie)——renren模拟登陆的更多相关文章

  1. 【Python爬虫】教务处模拟登陆

    Python2模拟登陆获取cookie import urllib import urllib2 import cookielib filename = 'cookie.txt' #声明一个Mozil ...

  2. Go -- client 302 自动转 200 问题 cookie存储 模拟登陆问题

    不久前用go写了个http client,去模拟某网站(*.com)的登录操作.网站的登录逻辑:1.验证登录账号和密码:2.下发token.此token通过cookie下发:3.redirect到主页 ...

  3. 【小白学爬虫连载(10)】–如何用Python实现模拟登陆网站

    Python如何实现模拟登陆爬取Python实现模拟登陆的方式简单来说有三种:一.采用post请求提交表单的方式实现.二.利用浏览器登陆网站记录登陆成功后的cookies,采用get的请求方式,传入c ...

  4. Scrapy 中的模拟登陆

    目前,大部分网站都具有用户登陆功能,其中某些网站只有在用户登陆后才能获得有价值的信息,在爬取这类网站时,Scrapy 爬虫程序先模拟登陆,再爬取内容 1.登陆实质 其核心是想服务器发送含有登陆表单数据 ...

  5. 通过cookies信息模拟登陆

    import requests # 这个练习演示的是通过传入cookie信息模拟登陆,这样操作的前提是需要预先在浏览器登陆账户抓包得到cookie字段信息 url = "http://www ...

  6. 爬虫之 cookie , 验证码,模拟登陆,线程

    需求文档的定制 糗事百科的段子内容和作者(xpath的管道符)名称进行爬取,然后存储到mysql中or文本 http://sc.chinaz.com/jianli/free.html爬取简历模板 HT ...

  7. 爬虫入门之scrapy模拟登陆(十四)

    注意:模拟登陆时,必须保证settings.py里的COOKIES_ENABLED(Cookies中间件) 处于开启状态 COOKIES_ENABLED = True或# COOKIES_ENABLE ...

  8. Python 爬虫模拟登陆知乎

    在之前写过一篇使用python爬虫爬取电影天堂资源的博客,重点是如何解析页面和提高爬虫的效率.由于电影天堂上的资源获取权限是所有人都一样的,所以不需要进行登录验证操作,写完那篇文章后又花了些时间研究了 ...

  9. python爬虫 模拟登陆校园网-初级

    最近跟同学学习爬虫的时候看到网上有个帖子,好像是山大校园网不稳定,用py做了个模拟登陆很有趣,于是我走上了一条不归路..... 先上一张校园网截图 首先弄清一下模拟登陆的原理: 1:服务器判定浏览器登 ...

随机推荐

  1. java异常的原理以及应用

    父类Throwable 两个分支: error:合理的应用程序不应该出现的严重问题,可以无需声明便抛出,比如内存溢出. Exception:程序还能够克服和恢复的问题. 其中又分为系统异常和普通异常. ...

  2. js图片上传及显示

    html部分: <form action='' method='post' name='myform'> <input type='file' id='iptfileupload' ...

  3. <<Senium2自动化测试>>读书笔记二

    为进一步加强Python知识扩展和学习,在朋友的推荐下选择了<<Selenium2自动化测试实战>>,作者胡志恒,基于Python语言实现,以实例的方式详细讲解WebDrive ...

  4. nginx中共享内存的使用

    在nginx的进程模型下,类似流量统计.流量控制.数据共享.等需要多个工作进程共同配合完成任务,共享内存是一个重要的进程通讯的方案.本文介绍在nginx的代码中与共享内存相关的功能,包括ngx_shm ...

  5. nginx开发笔记_ngx_hash源码解析

    ngx_hash源码解析 ngx_hash是nginx中的hash表结构,具有以下特点: 静态结构,hash表创建后无法动态添加/删除KV. 采用连续存储方式解决碰撞问题.即出现碰撞的KV存放在连续地 ...

  6. [转] 编写高效的 CSS 选择器

    高效的CSS已经不是一个新的话题了,也不是我一个非得重拾的话题,但它却是我在Sky公司工作之时,所感兴趣的,关注已久的话题. 有很多人都忘记了,或在简单的说没有意识到,CSS在我们手中,既能很高效,也 ...

  7. 原生JS中unshift与shift

    shift() 方法:shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值:用法:arrayObject.shift()如果数组是空的,那么 shift() 方法将不进行任何操作 ...

  8. ASPNET&nbsp;session客户端与服务…

    除非程序通知服务器删除一个session,否则服务器会一直保留,程序一般都是在用户做log off的时候发个指令去删除session.然而浏览器从来不会主动在关闭之前通知服务器它将要关闭,因此服务器根 ...

  9. 《精通Spring4.X企业应用开发实战》读后感第四章(BeanFactory和ApllicationContext)

  10. Python模拟登录代码

    注:访问http://127.0.0.1:8080/user/6,总是会要求必须有登录权限,也就是,若未登录,访问该页面,会跳转到登陆页面. 全自动模拟登录 半自动模拟登录: