爬虫代理的cookie如何生成运行


Posted in Python onSeptember 22, 2020

HTTP是用于互联网传输数据信息到本地的一种传送协议

我们在浏览器中输入输入关键词,会返回页面内容。这就是我们用浏览器向网站所在的服务器发送了一个请求,网站的服务器接收到这个请求后进行解析,然后把网页内容呈现出来。

有时候服务器网站会检测IP在一个时间段内的请求次数,如果过于频繁,就会拒绝服务,简称为封IP。

HTTP代理就是用别人的IP进行访问,进行IP伪装。

除非是访问网站或APP专用数据api接口,正常的HTTP请求都需要进行ua(User-Agent)优化,因为ua是浏览器标识,如果http请求没有ua,或ua太少,都会被网站运维统计异常的,ua越丰富分布就越真实。cookie最好是登陆获取的,一般访客的cookie,对方限制会比较严格,可以控制一个地区新访客的访问频率。另外反爬统计的js也要分析下,是不是做了机器人判断,有没有做窗口分辨率判断等。

生成cookie:

import os
import time
import zipfile

from selenium import webdriver
from selenium.common.exceptions import TimeoutException
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait


class GenCookies(object):
  USER_AGENT = open('useragents.txt').readlines()
  # www.16yun.cn 代理配置
  PROXY_HOST = 't.16yun.cn' # proxy or host
  PROXY_PORT = 31111 # port
  PROXY_USER = 'USERNAME' # username
  PROXY_PASS = 'PASSWORD' # password
def open(self):
    """
    打开网页输入用户名密码并点击
    :return: None
    """
    self.browser.delete_all_cookies()
    self.browser.get(self.url)
    username = self.wait.until(EC.presence_of_element_located((By.ID, 'loginName')))
    password = self.wait.until(EC.presence_of_element_located((By.ID, 'loginPassword')))
    submit = self.wait.until(EC.element_to_be_clickable((By.ID, 'loginAction')))
    username.send_keys(self.username)
    password.send_keys(self.password)
    time.sleep(1)
    submit.click()

  def password_error(self):
    """
    判断是否密码错误
    :return:
    """
    try:
      return WebDriverWait(self.browser, 5).until(
        EC.text_to_be_present_in_element((By.ID, 'errorMsg'), '用户名或密码错误'))
    except TimeoutException:
      return False

  def get_cookies(self):
    """
    获取Cookies
    :return:
    """
    return self.browser.get_cookies()

运行cookie:

API接口开始运行
* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
Cookies生成进程开始运行
Cookies检测进程开始运行
正在生成Cookies 账号 180000000 密码 16yun
正在测试Cookies 用户名 180000000
Cookies有效 180000000

如果HTTP请求成功,HTTP的状态码会返回200且返回数据。当然其他HTTP其他状态码也有,403表示禁止访问,504服务器内部出错等等。

以上就是爬虫代理的cookie如何生成运行的详细内容,更多关于爬虫代理 cookie的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python 装饰器功能以及函数参数使用介绍
Jan 27 Python
用Python实现一个简单的线程池
Apr 07 Python
Python将图片批量从png格式转换至WebP格式
Aug 22 Python
python链接oracle数据库以及数据库的增删改查实例
Jan 30 Python
Python中pow()和math.pow()函数用法示例
Feb 11 Python
python opencv调用笔记本摄像头
Aug 28 Python
Python处理mysql特殊字符的问题
Mar 02 Python
Python 如何批量更新已安装的库
May 26 Python
完美解决pycharm 不显示代码提示问题
Jun 02 Python
python opencv实现简易画图板
Aug 27 Python
pytorch 使用半精度模型部署的操作
May 24 Python
python opencv旋转图片的使用方法
Jun 04 Python
python 如何将office文件转换为PDF
Sep 22 #Python
Python制作一个仿QQ办公版的图形登录界面
Sep 22 #Python
Python使用for生成列表实现过程解析
Sep 22 #Python
python实现发送带附件的邮件代码分享
Sep 22 #Python
使用Python绘制台风轨迹图的示例代码
Sep 21 #Python
利用python绘制中国地图(含省界、河流等)
Sep 21 #Python
python利用google翻译方法实例(翻译字幕文件)
Sep 21 #Python
You might like
解析thinkphp中的导入文件标签
2013/06/20 PHP
php curl模拟post提交数据示例
2013/12/31 PHP
PHP中替换键名的简易方法示例详解
2014/01/07 PHP
php实现模拟post请求用法实例
2015/07/11 PHP
php微信公众号开发(3)php实现简单微信文本通讯
2016/12/15 PHP
PHP调用微博接口实现微博登录的方法示例
2018/09/22 PHP
js 颜色选择器(兼容firefox)
2009/03/05 Javascript
Prototype String对象 学习
2009/07/19 Javascript
jquery动画1.加载指示器
2012/08/24 Javascript
jquery插件如何使用 jQuery操作Cookie插件使用介绍
2012/12/15 Javascript
jQuery实现给页面换肤的方法
2015/05/30 Javascript
基于jquery编写分页插件
2016/03/07 Javascript
AngularJS使用ng-inlude指令加载页面失败的原因与解决方法
2017/01/19 Javascript
基于JS实现网页中的选项卡(两种方法)
2017/06/16 Javascript
不得不看之JavaScript构造函数及new运算符
2017/08/21 Javascript
vue3 源码解读之 time slicing的使用方法
2019/10/31 Javascript
Python实现1-9数组形成的结果为100的所有运算式的示例
2017/11/03 Python
python 寻找list中最大元素对应的索引方法
2018/06/28 Python
tensorflow学习教程之文本分类详析
2018/08/07 Python
python调用百度地图WEB服务API获取地点对应坐标值
2019/01/16 Python
pygame实现贪吃蛇游戏(下)
2019/10/29 Python
使用python远程操作linux过程解析
2019/12/04 Python
使用opencv将视频帧转成图片输出
2019/12/10 Python
解决Tensorflow 内存泄露问题
2020/02/05 Python
Python+unittest+requests+excel实现接口自动化测试框架
2020/12/23 Python
如何在Canvas中添加事件的方法示例
2019/05/21 HTML / CSS
高清屏中使用Canvas绘图出现模糊的问题及解决方法
2019/06/03 HTML / CSS
Mavi牛仔裤美国官网:土耳其著名牛仔品牌
2016/09/24 全球购物
十一个高级MySql面试题
2014/10/06 面试题
大三学习计划书范文
2014/05/02 职场文书
大学生党性分析材料
2014/12/19 职场文书
长城导游词300字
2015/01/30 职场文书
公司员工奖惩制度
2015/08/04 职场文书
uwsgi+nginx代理Django无法访问静态资源的解决
2021/05/10 Servers
电脑关机速度很慢怎么办 提升电脑关机速度设置教程
2022/04/08 数码科技
i7 6700处理器相当于i5几代
2022/04/19 数码科技