python 爬虫刷浏览量(单线程)---仅供学习目的,切莫有其他想法

2023-11-15

重要的事情说三遍:

仅供学习使用,若有其他想法,请出门右转

仅供学习使用,若有其他想法,请出门右转

仅供学习使用,若有其他想法,请出门右转

准备:

  简单的网站浏览量无非就是访问次数,那么一直按F5就可以,做得比较好的网站会根据“ip”计算浏览量。

所以步骤如下:

  1、去提供代理ip的网站爬取大量ip

  2、利用爬取的ip去构建请求,请求需要刷新的网址

 遇到的问题:

    1、proxy里面http 和https要小写 ,

    2、代理的ip不能正常使用,需要try 把异常抛出来,

    3、去爬取代理的时候竟然被代理网站屏蔽了(我也很无奈,只能随便找一个可用ip去代理访问)

开始:

直接上代码:(单线程)

#coding=utf-8
import sys
reload(sys)
sys.setdefaultencoding('utf8')
#-----------------------------------以上为控制编码方式
import requests
from bs4 import BeautifulSoup
from selenium import webdriver
#-----------------------------------构建爬大力ip头部请求
headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36",
}
#----------------------------------构建刷浏览量的头部
headers1 = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36",
    "Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
    "Accept-Encoding":"gzip, deflate, br",
    "Accept-Language":"zh-CN,zh;q=0.9",
    "Host":"blog.csdn.net",
    "Referer":"https://www.baidu.com/link?url=N5tv6Q8HFZKoiM0jwgasxeZFcACmTQj6ZdhGH_9tw-4moasBNbt1ziUg7Hc3yrNdDUzkywJWaptTv2nB7Mhn6Zmmbbcb73KDiV9UkkyiLIi&wd=&eqid=b01ced82000163f1000000025bc6f2c2",
}
##爬取代理网址
url = "http://www.nimadaili.com/https/"
#刷浏览量网址
url1 = "https://blog.csdn.net/xidianyueyong/article/details/83014490"
page = 1    #走动拉去ip下一页
index = 1   #刷新次数计数
while 1:
    #使用代理ip大量拉取代理ip   由于ip代理网站是js交互式的,所以要本地起一个 phantomJs 来解析
    ###下面这个不要问为什么,现代代理ip的网站也有屏蔽    迫不得已用代理爬虫代理ip
    #-----------------------------------------------------------------------------------------
    service_args = ['--proxy=123.57.76.102:80','--proxy-type=http']     #设置ip
       # "http":"http://120.77.247.147:80"
    driver = webdriver.PhantomJS(service_args = service_args)
    driver.get(url+str(page))
    data = driver.page_source
    driver.quit()
    page+=1     #表示翻页
    print page  #打印下一页页数
    source = BeautifulSoup(data, "lxml")  # 解析一下执行过js的网页代码
    cookies = dict(smidV2='201809010949063bb3637a1929ba7ee66871cecd6cf81f007684ccfa7eaaa50')   #随笔写一个cookies
    # -----------------------------------ip结果处理
    res_group = source.select(".mt-0 tr")   #分析网站源码,找到ip列表并提取
    res_group = res_group[1:]               #截去第一个防止title被算进内
    #-------------------------------------------------------------------------------------------------------
    #-------------------------------------------------------------------------------------------------------
    #刷浏览量部分
    for i in res_group:                     #循环利用代理ip
        if len(i) > 0 and i != []:
            td_group = i.find_all("td")
            #---------------------------构造代理
            proxy = {
                "https":"https"+"://"+td_group[0].text   #+":"+td_group[2].text
            }
    # ----------------------------------代理发送请求
            try:
                r = requests.get(url=url1, headers=headers1, proxies=proxy,cookies = cookies,timeout = 3)
            except BaseException:
                continue
            else:
                if r.status_code == 200:
                    print ("刷新 %d次!" % index)
                    index += 1
                else:
                    continue
print "刷新成功!"

    望各位看官大神指点12

 

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python 爬虫刷浏览量(单线程)---仅供学习目的,切莫有其他想法 的相关文章

随机推荐

  • element-ui 实现多日期选择

    一 前端代码
  • Spring 多线程异步上传图片、处理水印、缩略图

    使用环境 SpringBoot FastDfs thumbnailator fdfs环境自己搞吧 thumbnailator maven依赖
  • C++中引用的用法以及将引用作为函数的形参

    在C 中引用就相当于是给变量起了一个别名 有点类似于指针 但是与指针又不同 引用的初始化 int i i 10 变量i的引用 引用必须在创建的时候就要初始化 而指针可以在任意的时候初始化 引用就相当于是给变量起了一个别名 int i r i
  • HTML基本结构

    HTML一般是在vscod中进行书写 后缀为html 其完整的基本结构如下 h1 一级标题 h1 每一个尖括号 lt gt 代表着标签或者说是元素 不同的标签代表有着不同的作用 标签一般成对出现后一个标签为前一个标签加一个 例如 但也有单个
  • 基于巴法云的esp8266实现温湿度、LED、sg90舵机和HC-RS04实现的小程序远程控制

    基于巴法云的esp8266实现温湿度 LED sg90舵机和HC RS04实现的小程序远程控制 具体代码 本项目想法已经在我脑海想了很久了 都没有时间去实现它 这次刚刚考完试就用了两天把它做了出来 希望对大家有帮助 有什么需要的可以在下面留
  • upload-labs:pass-10

    is upload false msg null if isset POST submit if file exists UPLOAD PATH deny ext array php php5 php4 php3 php2 html htm
  • 工厂三兄弟之工厂方法模式(四)

    5 重载的工厂方法 Sunny公司开发人员通过进一步分析 发现可以通过多种方式来初始化日志记录器 例如可以为各种日志记录器提供默认实现 还可以为数据库日志记录器提供数据库连接字符串 为文件日志记录器提供文件路径 也可以将参数封装在一个Obj
  • Puppeteer 安装与注意事项 《一》

    Puppeteer 安装与注意事项 1 安装node js 在使用puppeteer的时候 它一些低版本的node是不支持的 作者推荐使用8以上的版本 否则node在后面使用puppeteer的时候会 抛出 SyntaxError Unex
  • 从外部验证安全密码存储

    许多网站 包括 Adobe Yahoo LinkedIn Gawker等大型网站 不安全地存储用户密码 可以是纯文本格式的 也可以是加密的 可逆的 格式 或者是使用残破或蛮力的哈希函数 许多网站的密码存储机制仍然很差 所以呢 好吧 如果数据
  • js生成柱状图

  • 内存泄露的检测方法

    本文来自http blog csdn net lijun84 引用必须注明出处 在谈及内存泄漏时 对于没有太多经验的新人来说总是很头疼的一件事 因为如果项目早期没有将其纳入代码框架 后期部署上线之后 仅从进程 crash 的 dump 很难
  • openGauss学习笔记-36 openGauss 高级数据管理-TRUNCATE TABLE语句

    文章目录 openGauss学习笔记 36 openGauss 高级数据管理 TRUNCATE TABLE语句 36 1 语法格式 36 2 参数说明 36 3 示例 openGauss学习笔记 36 openGauss 高级数据管理 TR
  • Docker部署Emqx并配置ssl支持微信小程序

    1 端口介绍 1883 MQTT 协议端口 8084 MQTT SSL 端口 8083 MQTT WebSocket 端口 8080 HTTP API 端口 18083 Dashboard 管理控制台端口 2 拉取镜像 docker pul
  • 算法与数据结构—LeetCode刷题笔记

    算法刷题笔记 一 动态规划 53 最大子序和 300 最长上升子序列 70 爬楼梯 242 有效的字母异位词 463 岛屿的周长 文章与视频资源多平台更新 微信公众号 知乎 B站 头条 AI研习图书馆 一 动态规划 53 最大子序和 典型的
  • js执行时序 宏任务和微任务

    宏任务一般是 包括整体代码script setTimeout setInterval I O UI render 微任务主要是 Promise Object observe MutationObserver process nextTick
  • 【MySQL高性能】MyCat 2.分片策略以及原理分析

    简介 数据库分片可以把他理解成分库 将一张表拆分到多个数据库中 通常是在表数据大的情况进行拆分 根据InnerDB索引原理 主键索引类型bigint计算得出一张表达到2千万就需要进行拆分了 当然也需要提前做好拆分 数据量大查询效率会慢 阿里
  • android kernel devices睡眠唤醒调试

    主要是在kernel添加关键log 获取有用信息 可以调试suspend resume earlysuspend lateresume等方面的问题 如哪一过程时间过长 跟踪log才可以很好定位问题 解决问题 1 early suspend
  • PermissionError: [WinError 5] 拒绝访问

    使用Pycharm运行时 报错 PermissionError WinError 5 拒绝访问 但是使用终端 Terminal 运行就没有问题 尝试方案 三步解决python PermissionError WinError 5 拒绝访问的
  • vue 报错:Invalid prop: type check failed for prop “xxx“. Expected String with value “1“,Number...

    期望的是String类型 但是传的值是Number 类型 如果你传的是number类型的你需要先转化为字符串就可以了 改成
  • python 爬虫刷浏览量(单线程)---仅供学习目的,切莫有其他想法

    重要的事情说三遍 仅供学习使用 若有其他想法 请出门右转 仅供学习使用 若有其他想法 请出门右转 仅供学习使用 若有其他想法 请出门右转 准备 简单的网站浏览量无非就是访问次数 那么一直按F5就可以 做得比较好的网站会根据 ip 计算浏览量