python爬虫网站流量_基于爬虫刷新某网站访问量!我说怎么上千万呢!

本文介绍了使用Python爬虫模拟访问CSDN博客以增加访问量的方法,通过更换IP地址避开限制。代码示例中展示了如何抓取免费IP代理,并利用这些代理进行访问。注意,此类行为仅适用于学习交流,不宜用于商业目的。
摘要由CSDN通过智能技术生成

前言:前一段时间看到有博友写了爬虫去刷新博客访问量一篇文章,当时还觉得蛮有意思的,就保存了一下,但是当我昨天准备复现的时候居然发现文章404了。

所以本篇文章仅供学习交流,严禁用于商业用途

当我在写文章的同时,代码依然在运行,亲测是有效滴。

你很容易会发现你写的那些水文章的url都有一个共同特点,前面都是固定的,就是后面一串数字不一样,这串数字是利用某种算法生成,因为我不会,这里我不展开讲了。我只需要把后面的数字拿过来就好了。

https://blog.csdn.net/SuperBetterMan/article/details/107508976

https://blog.csdn.net/SuperBetterMan/article/details/107368925

https://blog.csdn.net/SuperBetterMan/article/details/107144322

CSDN是基于ip地址去判别有效的访问量,同一个ip访问过多后,会被后台判定是机器,将不再增加访问量,IP甚至会被禁止访问一段时间。那我们找了一个免费的性价比还不错的ip代理,很好解决了这个小小的问题。

昨晚出去散步把代码放在跑,本来以为能刷个几k吧,但是当我回来却发现刷到2百多的时候,后台就给我停掉了,而且网站应该是设置了一个时间戳,在一定时间内,即使不同的ip访问了,也不会增加访问量。

最后当我写完这行的时候,代码也还在跑,真要是闲的没事可以放在云服务器上多搞几个线程跑个几天几夜,然后号就没了

最后附上代码,代码也上传到github,里面有一些其他较为有意思的代码,希望大家可以喜欢,然后给我一个小star

from lxml import html

import time

import random

import requests

import re

import urllib.request

import urllib.parse

firefoxHead = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0"}

IPRegular = r"(([1-9]?\d|1\d{2}|2[0-4]\d|25[0-5]).){3}([1-9]?\d|1\d{2}|2[0-4]\d|25[0-5])"

host = "https://blog.csdn.net"

url = "https://blog.csdn.net/SuperBetterMan/article/details/{}"

codes = ["106651719", "106533059", "107508976", "106658304", "106594490", "106242605"]

def parseIPList(url="https://www.89ip.cn/tqdl.html?num=60&address=&kill_address=&port=9999&kill_port=&isp="):

req = urllib.request.Request(url) # 创建请求对象

res = urllib.request.urlopen(req) # 对网页发起请求并获取响应

html = res.read().decode("utf-8")

p = re.compile(r'(?

IPS = re.findall(p, html)

return IPS

def PV(code):

s = requests.Session()

s.headers = firefoxHead

count = 0

while True:

count += 1

print("正在进行第{}次访问\t".format(count), end="\t")

IPs = parseIPList()

# print(random.choice(IPs))

# IPs = ["36.248.129.106","36.248.132.123"]

newip = random.choice(IPs)

print('ip地址是{}'.format(newip))

s.proxies = {"http: {}:9999".format(newip)}

s.get(host)

# r = s.get(url.format(random.choice(codes)))

r = s.get(url.format(codes[random.randint(0, 5)]))

en = html.etree.HTML(r.text) # 将网页源代码解析成xpath对象

result = en.xpath('//*[@id="articleContentId"]/text()')

print(result)

Views = en.xpath('//*[@id="mainBox"]/main/div[1]/div/div/div[2]/div[1]/div/span[2]/text()')

print('访问量是{}'.format(Views))

time.sleep(random.randint(5,10))

def main():

PV(codes[0])

# parseIPList()

if __name__ == "__main__":

main()

很简单,有木有 源码获取加群:1136192749

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值