最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識(shí)百科 - 正文

分享一篇用Python刷瀏覽量的實(shí)例教程

來源:懂視網(wǎng) 責(zé)編:小OO 時(shí)間:2020-11-27 14:24:08
文檔

分享一篇用Python刷瀏覽量的實(shí)例教程

思路來源;今天很偶然的一個(gè)機(jī)會(huì),聽到別人在談?wù)摤F(xiàn)在的“刷量”行為,于是就激發(fā)了我的好奇心。然后看了下requests模塊正好對(duì)我有用,就寫了一個(gè)簡(jiǎn)單的測(cè)試用例。神奇的發(fā)現(xiàn)這一招竟然是管用的。那還等什么,開刷咯。前奏;思路很簡(jiǎn)單,就是一個(gè)發(fā)送請(qǐng)求的實(shí)現(xiàn),就可以了。代碼如下:
推薦度:
導(dǎo)讀思路來源;今天很偶然的一個(gè)機(jī)會(huì),聽到別人在談?wù)摤F(xiàn)在的“刷量”行為,于是就激發(fā)了我的好奇心。然后看了下requests模塊正好對(duì)我有用,就寫了一個(gè)簡(jiǎn)單的測(cè)試用例。神奇的發(fā)現(xiàn)這一招竟然是管用的。那還等什么,開刷咯。前奏;思路很簡(jiǎn)單,就是一個(gè)發(fā)送請(qǐng)求的實(shí)現(xiàn),就可以了。代碼如下:

本篇文章主要介紹了Python 自動(dòng)刷博客瀏覽量實(shí)例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

思路來源

今天很偶然的一個(gè)機(jī)會(huì),聽到別人在談?wù)摤F(xiàn)在的“刷量”行為,于是就激發(fā)了我的好奇心。然后看了下requests模塊正好對(duì)我有用,就寫了一個(gè)簡(jiǎn)單的測(cè)試用例。神奇的發(fā)現(xiàn)這一招竟然是管用的。那還等什么,開刷咯。

前奏

思路很簡(jiǎn)單,就是一個(gè)發(fā)送請(qǐng)求的實(shí)現(xiàn),就可以了。代碼如下:

headers = {
 'referer':'www.gxlcms.com',
 'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.94 Safari/537.36'
}

def getHtml(url,headers):
 req = urllib2.Request(url,headers=headers)
 page = urllib2.urlopen(req)
 html = page.read()
 return html

我們手動(dòng)的添加一下目標(biāo)url以及一個(gè)headers就可以了。我自然的會(huì)用自己的做下測(cè)試咯。

代碼試著運(yùn)行了一下,確實(shí)是可以增加瀏覽量滴。

慢增長(zhǎng)

既然這樣的方案是可行的,那就說明思路是正確的了。于是我們自然會(huì)想到寫一個(gè)循環(huán)吧。這樣不就能實(shí)現(xiàn)大量的瀏覽的增加了嗎?
是的,我確實(shí)是這樣干的。代碼如下:

i= 0
while i < 10:
 url = 'jb51.net/marksinoberg/article/details/51501377'
 getHtml(url,headers)

剛開始的時(shí)候,可以明顯的看到博客數(shù)量的增加,(^^) 嘻嘻……初見成效咯。但是好景不長(zhǎng),我發(fā)現(xiàn)瀏覽量增加了10次之后。就呵呵了。

然后就不能增加了,估計(jì)是服務(wù)器對(duì)我這個(gè)訪問做了一定的限制了,否則按理說應(yīng)該是可行的。

想方設(shè)法對(duì)坑

俗話說“上有政策,下有對(duì)策”,我自然不能受這個(gè)約束啊,于是我就猜想是對(duì)我的IP進(jìn)行了記錄。然后對(duì)我的訪問次數(shù)添加了一些限制。

我的解決辦法:

  1. 代理IP進(jìn)行訪問:但是考慮到?jīng)]有服務(wù)器,所以代理不了IP進(jìn)行訪問了。

  2. 改變IP:既然是這樣,那我就想辦法改變自己的ip來進(jìn)行訪問唄。那么怎么改變自己的IP呢?(現(xiàn)在想想好后悔,當(dāng)時(shí)計(jì)算機(jī)網(wǎng)絡(luò)沒有好好聽課,IP欺騙沒有學(xué)好,否則現(xiàn)在不就可以用了嘛)。但是條條大路通羅馬嘛,我還有其他的方法。如下:

C:UsersAdministrator>ipconfig /release

Windows IP 配置

不能在 本地連接 上執(zhí)行任何操作,它已斷開媒體連接。

無線局域網(wǎng)適配器 無線網(wǎng)絡(luò)連接:

連接特定的 DNS 后綴 . . . . . . . :
本地鏈接 IPv6 地址. . . . . . . . : fe80::1d9f:d97b:fd16:1f6f%
默認(rèn)網(wǎng)關(guān). . . . . . . . . . . . . :

以太網(wǎng)適配器 本地連接:

媒體狀態(tài) . . . . . . . . . . . . : 媒體已斷開
連接特定的 DNS 后綴 . . . . . . . : OurEDA.cn

以太網(wǎng)適配器 VMware Network Adapter VMnet1:

連接特定的 DNS 后綴 . . . . . . . :
本地鏈接 IPv6 地址. . . . . . . . : fe80::359d:e81d:741:f257%1
IPv4 地址 . . . . . . . . . . . . : 192.168.229.1
子網(wǎng)掩碼 . . . . . . . . . . . . : 255.255.255.0
默認(rèn)網(wǎng)關(guān). . . . . . . . . . . . . :

以太網(wǎng)適配器 VMware Network Adapter VMnet8:

連接特定的 DNS 后綴 . . . . . . . :
本地鏈接 IPv6 地址. . . . . . . . : fe80::94b1:d10f:b68:101d%1
IPv4 地址 . . . . . . . . . . . . : 192.168.244.1
子網(wǎng)掩碼 . . . . . . . . . . . . : 255.255.255.0
默認(rèn)網(wǎng)關(guān). . . . . . . . . . . . . :

以太網(wǎng)適配器 VirtualBox Host-Only Network:

連接特定的 DNS 后綴 . . . . . . . :
本地鏈接 IPv6 地址. . . . . . . . : fe80::a5eb:545c:7d89:9451%
IPv4 地址 . . . . . . . . . . . . : 192.168.56.1
子網(wǎng)掩碼 . . . . . . . . . . . . : 255.255.255.0
默認(rèn)網(wǎng)關(guān). . . . . . . . . . . . . :

隧道適配器 isatap.{4F399971-B739-4B71-BD79-E48233EEC9BE}:

媒體狀態(tài) . . . . . . . . . . . . : 媒體已斷開
連接特定的 DNS 后綴 . . . . . . . :

隧道適配器 isatap.{1860C94E-1007-4418-9A26-7D8AA8F06E15}:

媒體狀態(tài) . . . . . . . . . . . . : 媒體已斷開
連接特定的 DNS 后綴 . . . . . . . :

隧道適配器 isatap.OurEDA.cn:

媒體狀態(tài) . . . . . . . . . . . . : 媒體已斷開
連接特定的 DNS 后綴 . . . . . . . :

隧道適配器 isatap.dlut.edu.cn:

媒體狀態(tài) . . . . . . . . . . . . : 媒體已斷開
連接特定的 DNS 后綴 . . . . . . . :

隧道適配器 isatap.{6F7F27ED-942E-4EFB-ACF2-A4E8793B161D}:

媒體狀態(tài) . . . . . . . . . . . . : 媒體已斷開
連接特定的 DNS 后綴 . . . . . . . :

C:UsersAdministrator>ipconfig /renew

Windows IP 配置

不能在 本地連接 上執(zhí)行任何操作,它已斷開媒體連接。

無線局域網(wǎng)適配器 無線網(wǎng)絡(luò)連接:

連接特定的 DNS 后綴 . . . . . . . :
本地鏈接 IPv6 地址. . . . . . . . : fe80::1d9f:d97b:fd16:1f6f%12
IPv4 地址 . . . . . . . . . . . . : 192.168.58.70
子網(wǎng)掩碼 . . . . . . . . . . . . : 255.255.252.0
默認(rèn)網(wǎng)關(guān). . . . . . . . . . . . . : 192.168.56.1

以太網(wǎng)適配器 本地連接:

媒體狀態(tài) . . . . . . . . . . . . : 媒體已斷開
連接特定的 DNS 后綴 . . . . . . . : OurEDA.cn

以太網(wǎng)適配器 VMware Network Adapter VMnet1:

連接特定的 DNS 后綴 . . . . . . . :
本地鏈接 IPv6 地址. . . . . . . . : fe80::359d:e81d:741:f257%14
IPv4 地址 . . . . . . . . . . . . : 192.168.229.1
子網(wǎng)掩碼 . . . . . . . . . . . . : 255.255.255.0
默認(rèn)網(wǎng)關(guān). . . . . . . . . . . . . :

以太網(wǎng)適配器 VMware Network Adapter VMnet8:

連接特定的 DNS 后綴 . . . . . . . :
本地鏈接 IPv6 地址. . . . . . . . : fe80::94b1:d10f:b68:101d%15
IPv4 地址 . . . . . . . . . . . . : 192.168.244.1
子網(wǎng)掩碼 . . . . . . . . . . . . : 255.255.255.0
默認(rèn)網(wǎng)關(guān). . . . . . . . . . . . . :

以太網(wǎng)適配器 VirtualBox Host-Only Network:

連接特定的 DNS 后綴 . . . . . . . :
本地鏈接 IPv6 地址. . . . . . . . : fe80::a5eb:545c:7d89:9451%16
IPv4 地址 . . . . . . . . . . . . : 192.168.56.1
子網(wǎng)掩碼 . . . . . . . . . . . . : 255.255.255.0
默認(rèn)網(wǎng)關(guān). . . . . . . . . . . . . :

隧道適配器 isatap.{4F399971-B739-4B71-BD79-E48233EEC9BE}:

媒體狀態(tài) . . . . . . . . . . . . : 媒體已斷開
連接特定的 DNS 后綴 . . . . . . . :

隧道適配器 isatap.{1860C94E-1007-4418-9A26-7D8AA8F06E15}:

媒體狀態(tài) . . . . . . . . . . . . : 媒體已斷開
連接特定的 DNS 后綴 . . . . . . . :

隧道適配器 isatap.OurEDA.cn:

媒體狀態(tài) . . . . . . . . . . . . : 媒體已斷開
連接特定的 DNS 后綴 . . . . . . . :

隧道適配器 isatap.dlut.edu.cn:

媒體狀態(tài) . . . . . . . . . . . . : 媒體已斷開
連接特定的 DNS 后綴 . . . . . . . :

隧道適配器 isatap.{6F7F27ED-942E-4EFB-ACF2-A4E8793B161D}:

媒體狀態(tài) . . . . . . . . . . . . : 媒體已斷開
連接特定的 DNS 后綴 . . . . . . . :

是的,想必大家都看到了。核心的兩個(gè)命令就是

// 更改路由表的配置
ipconfig / release // 釋放網(wǎng)絡(luò),
ipconfig /renew // 重新分配IP

這樣基本上對(duì)于改變自己的IP是有點(diǎn)效果的。尤其是對(duì)局域網(wǎng)用戶而言。

所以,我只需要在Python代碼中調(diào)用系統(tǒng)的cmd命令,就可以動(dòng)態(tài)的改變自己的IP了。也就達(dá)成了我的需求了

難題

雖然IP的問題解決了,但是這樣刷的話,還是太慢。因?yàn)槁酚杀淼母聲r(shí)需要時(shí)間的。而這和代碼運(yùn)行的速度比起來,真的是太慢太慢了。而且每次只能刷出十個(gè)瀏覽量,額。確實(shí)是比較的尷尬啊。費(fèi)了這么大的勁,才刷了十個(gè)瀏覽量。怎么解決這個(gè)問題呢?

我其實(shí)也沒有真正的解決這個(gè)問題,但是我發(fā)現(xiàn)這個(gè)限制也是不特別的強(qiáng),因?yàn)槲抑型境粤藗€(gè)飯,回來的時(shí)候就發(fā)現(xiàn)原來的IP又可以刷了。大概45分鐘左右的間隔吧!這是個(gè)突破點(diǎn)。
源碼

其實(shí)思路很簡(jiǎn)單,就是想方設(shè)法的針對(duì)問題解決問題。不管對(duì)方的系統(tǒng)多么的堅(jiān)固,也不可能是天衣無縫,總會(huì)有一種解決的辦法的。下面是代碼。

# coding:utf-8

# author = 'Mark sinoberg'
# date = '2016/5/26'
# Desc = 測(cè)試測(cè)試 刷新自己的博客的瀏覽量

import urllib2,re
from bs4 import BeautifulSoup

def getHtml(url,headers):
 req = urllib2.Request(url,headers=headers)
 page = urllib2.urlopen(req)
 html = page.read()
 return html

def parse(data):
 content = BeautifulSoup(data,'lxml')
 return content

def getReadNums(data,st):
 reg = re.compile(st)
 return re.findall(reg,data)

url = 'http://jb51.net/marksinoberg/article/details/51493318'
headers = {
 'referer':'http://jb51.net/',
 'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.94 Safari/537.36'
}
i = 0
while i<24:
 html = getHtml(url,headers)
 content = parse(html)
 result = content.find_all('span',class_='link_view')
 print result[0].get_text()
 i = i +1

代碼運(yùn)行結(jié)果:

D:SoftwarePython2python.exe E:/Code/Python/MyTestSet/ulib2/AddWatcher.py
94人閱讀
95人閱讀
96人閱讀
97人閱讀
98人閱讀
99人閱讀
100人閱讀
101人閱讀
102人閱讀
103人閱讀
104人閱讀
105人閱讀
106人閱讀
107人閱讀
108人閱讀
109人閱讀
110人閱讀
111人閱讀
112人閱讀
113人閱讀
114人閱讀
115人閱讀
115人閱讀
115人閱讀

Process finished with exit code 0

比較好的地方就是使用了BeautifulSoup抓取了特定位置的數(shù)據(jù),這里是對(duì)瀏覽量的抓取。從上面的結(jié)果也可以看出,一個(gè)IP抓取的數(shù)據(jù)量是有限制的,一般來說是10~30個(gè),這里貌似是22次訪問。

展望

其實(shí)我是可以做到一次運(yùn)行多次刷新的效果的,但是這樣做不是特別的正派,所以我就說一下自己的思路吧。

  1. 對(duì)result(瀏覽量結(jié)果)做判斷,當(dāng)出現(xiàn)連續(xù)的兩次結(jié)果一致的時(shí)候,開啟python執(zhí)行cmd命令,更新自己的IP。但是這是個(gè)耗時(shí)操作,可以放到一個(gè)線程里面

  2. 再就是對(duì)自己的博客list界面進(jìn)行抓取,獲得自己的所有的博文。當(dāng)然,這里很明顯會(huì)使用到模擬登陸。然后對(duì)每一個(gè)博客進(jìn)行刷量。這樣雖然沒有真正的解決問題,但是積少成多,也會(huì)起到一個(gè)不錯(cuò)的效果。

  3. 做一個(gè)定時(shí)刷量的線程,每隔XX時(shí)間刷新一遍。這樣一天下來,一篇文章大概也能實(shí)現(xiàn)幾百的訪問吧。(我沒試過,我也不知道)

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

分享一篇用Python刷瀏覽量的實(shí)例教程

思路來源;今天很偶然的一個(gè)機(jī)會(huì),聽到別人在談?wù)摤F(xiàn)在的“刷量”行為,于是就激發(fā)了我的好奇心。然后看了下requests模塊正好對(duì)我有用,就寫了一個(gè)簡(jiǎn)單的測(cè)試用例。神奇的發(fā)現(xiàn)這一招竟然是管用的。那還等什么,開刷咯。前奏;思路很簡(jiǎn)單,就是一個(gè)發(fā)送請(qǐng)求的實(shí)現(xiàn),就可以了。代碼如下:
推薦度:
標(biāo)簽: 分享 教程 刷量
  • 熱門焦點(diǎn)

最新推薦

猜你喜歡

熱門推薦

專題
Top