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

 更新时间:2020年09月22日 09:17:32   作者:laical  
这篇文章主要介绍了爬虫代理的cookie如何生成运行,帮助大家更好的理解和使用爬虫,感兴趣的朋友可以了解下

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中特殊函数集锦

    这篇文章主要介绍了Python中特殊函数,主要介绍一下四个函数:1 过滤函数filter 2 映射和归并函数map/reduce 3 装饰器@ 4 匿名函数lamda,需要的朋友可以参考下
    2015-07-07
  • 用Python爬取各大高校并可视化帮弟弟选大学,弟弟直呼牛X

    用Python爬取各大高校并可视化帮弟弟选大学,弟弟直呼牛X

    高考结束了,接下来最重要的就是玩玩玩,然后准备报志愿吧.中国教育在线网显示国内目前共有2857所高等院校,报一个理想的学校简直是千里挑一.正好表弟求着我让我帮他选学校,我想着十年寒窗苦读也不容易不如就用python帮帮他.分析一下目前国内的大学,需要的朋友可以参考下
    2021-06-06
  • python 使用OpenCV进行简单的人像分割与合成

    python 使用OpenCV进行简单的人像分割与合成

    这篇文章主要介绍了python 使用OpenCV进行简单的人像分割与合成的方法,帮助大家更好的利用python处理图像,感兴趣的朋友可以了解下
    2021-02-02
  • pytorch使用 to 进行类型转换方式

    pytorch使用 to 进行类型转换方式

    今天小编就为大家分享一篇pytorch使用 to 进行类型转换方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • Django框架使用富文本编辑器Uedit的方法分析

    Django框架使用富文本编辑器Uedit的方法分析

    这篇文章主要介绍了Django框架使用富文本编辑器Uedit的方法,结合实例形式分析了Django框架中使用Uedit的安装、配置方法及Uedit相关插件制作方法,需要的朋友可以参考下
    2018-07-07
  • python查找指定文件夹下所有文件并按修改时间倒序排列的方法

    python查找指定文件夹下所有文件并按修改时间倒序排列的方法

    今天小编就为大家分享一篇python查找指定文件夹下所有文件并按修改时间倒序排列的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10
  • python获得两个数组交集、并集、差集的方法

    python获得两个数组交集、并集、差集的方法

    这篇文章主要介绍了python获得两个数组交集、并集、差集的方法,实例分析了Python操作list集合的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • Python序列化与反序列化pickle用法实例

    Python序列化与反序列化pickle用法实例

    这篇文章主要介绍了Python序列化与反序列化pickle用法实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • python保留两位小数的3种方法实例

    python保留两位小数的3种方法实例

    保留小数位是我们经常会碰到的问题,尤其是刷题过程中,下面这篇文章主要给大家介绍了关于python保留两位小数的3种方法,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-12-12
  • python图形界面教程Tkinter详解

    python图形界面教程Tkinter详解

    Python自带了tkinter模块,实质上是一种流行的面向对象的GUI工具包 TK 的Python编程接口,提供了快速便利地创建GUI应用程序的方法,下面这篇文章主要给大家介绍了关于python图形界面教程Tkinter的相关资料,需要的朋友可以参考下
    2022-12-12

最新评论