爬虫代理的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 相关文章推荐
pandas apply 函数 实现多进程的示例讲解
Apr 20 Python
Python使用random.shuffle()打乱列表顺序的方法
Nov 08 Python
在pycharm中使用git版本管理以及同步github的方法
Jan 16 Python
强悍的Python读取大文件的解决方案
Feb 16 Python
python使用参数对嵌套字典进行取值的方法
Apr 26 Python
Python使用指定端口进行http请求的例子
Jul 25 Python
python字典排序的方法
Oct 12 Python
python 队列基本定义与使用方法【初始化、赋值、判断等】
Oct 24 Python
python3安装OCR识别库tesserocr过程图解
Apr 02 Python
Windows下Anaconda安装、换源与更新的方法
Apr 17 Python
pip安装提示Twisted错误问题(Python3.6.4安装Twisted错误)
May 09 Python
分享提高 Python 代码的可读性的技巧
Mar 03 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
回首过去10年中最搞笑的10部动漫,哪一部让你节操尽碎?
2020/03/03 日漫
php split汉字
2009/06/05 PHP
PHP 正则判断中文UTF-8或GBK的思路及具体实现
2013/11/26 PHP
php生成excel列序号代码实例
2013/12/24 PHP
CodeIgniter生成静态页的方法
2016/05/17 PHP
php mysqli查询语句返回值类型实例分析
2016/06/29 PHP
Laravel框架源码解析之模型Model原理与用法解析
2020/05/14 PHP
JavaScript 组件之旅(三):用 Ant 构建组件
2009/10/28 Javascript
JQuery 构建客户/服务分离的链接模型中Table中的排序分析
2010/01/22 Javascript
JavaScript高级程序设计 阅读笔记(七) ECMAScript中的语句
2012/02/27 Javascript
jquery鼠标放上去显示悬浮层即弹出定位的div层
2014/04/25 Javascript
程序员必知35个jQuery 代码片段
2015/11/05 Javascript
JavaScript数据操作_浅谈原始值和引用值的操作本质
2016/08/23 Javascript
微信小程序 textarea 详解及简单使用方法
2016/12/05 Javascript
详解jQuery事件
2017/01/13 Javascript
javascript数据类型详解
2017/02/07 Javascript
AngularJS 支付倒计时功能实现思路
2017/06/05 Javascript
微信小程序的分类页面制作
2017/06/27 Javascript
javascript按钮禁用和启用的效果实例代码
2017/10/29 Javascript
对vue事件的延迟执行实例讲解
2018/08/28 Javascript
微信JS-SDK实现微信会员卡功能(给用户微信卡包里发送会员卡)
2019/07/25 Javascript
Vue中import from的来源及省略后缀与加载文件夹问题
2020/02/09 Javascript
python网络编程学习笔记(四):域名系统
2014/06/09 Python
python 生成器生成杨辉三角的方法(必看)
2017/04/10 Python
python下10个简单实例代码
2017/11/15 Python
对python添加模块路径的三种方法总结
2018/10/16 Python
tensorflow的ckpt及pb模型持久化方式及转化详解
2020/02/12 Python
python用opencv完成图像分割并进行目标物的提取
2020/05/25 Python
HTML5响应式(自适应)网页设计的实现
2017/11/17 HTML / CSS
Rag & Bone官网:瑞格布恩高级成衣
2018/04/19 全球购物
毕业证丢失证明
2014/01/15 职场文书
食品安全承诺书范文
2014/08/29 职场文书
《红领巾真好》教学反思
2016/02/16 职场文书
大学生奶茶店创业计划书
2019/06/25 职场文书
教你解决往mysql数据库中存入汉字报错的方法
2021/05/06 MySQL
springBoot基于webSocket实现扫码登录
2021/06/22 Java/Android