python3 使用免費(fèi)代理 IP 刷網(wǎng)站的訪問量

使用網(wǎng)絡(luò)上免費(fèi)的代理ip,讓你的python瀏覽其它網(wǎng)站的時(shí)候不顯示真實(shí)的ip,尤其是爬蟲的時(shí)候,可以定時(shí)換ip。非常方便。
使用python模擬真實(shí)的瀏覽器去定時(shí)訪問要刷量的網(wǎng)站,加上代理IP。

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

#-*- maxc.cc - 2019-09-18  -*-

import requests
from bs4 import BeautifulSoup
import random
import time

proxiesurl = 'http://www.xicidaili.com/nt/'
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36'}   

#獲取代理ip的list,用于隨機(jī)選一個(gè)
def get_ip_list(url, headers):
    web_data = requests.get(url, headers=headers)
    soup = BeautifulSoup(web_data.text, 'lxml')
    ips = soup.find_all('tr')
    ip_list = []
    for i in range(1, len(ips)):
        ip_info = ips[i]
        tds = ip_info.find_all('td')
        ip_list.append(tds[1].text + ':' + tds[2].text)
    print('get ip list success')
    return ip_list

#隨機(jī)從獲取到的IP中選一個(gè)生成代理IP
def get_random_ip(ip_list):
    proxy_list = []
    for ip in ip_list:
        proxy_list.append('http://' + ip)
    proxy_ip = random.choice(proxy_list)
    prox = {'http': proxy_ip}
    print('get random ip - success')
    return prox

#刷PV的主程序
def mainpv():
    pvurl = ['https://mikeyoung.zcool.com.cn/',
       'https://www.zcool.com.cn/work/ZMTM0Mzk2MjA=.html']
    count = 0
    countUrl = len(pvurl) 
    print(proxies)

    #設(shè)置一個(gè)隨機(jī)執(zhí)行的時(shí)間
    randomtime = random.randint(1, 100)
    print(randomtime)

    # 訪問次數(shù)設(shè)置限制
    while count < 11:
        try:  # 正常運(yùn)行
            for i in range(countUrl):
                response = requests.get(pvurl[i], headers=headers,proxies=proxies)
                if response.status_code == 200:
                    count = count + 1
                    print('Success ' + str(count), 'times')
            time.sleep(randomtime)
        except Exception:  # 異常
            print('Failed and Retry')

#運(yùn)行程序的順序
if __name__ == '__main__':
    ip_list = get_ip_list(proxiesurl, headers=headers)
    proxies = get_random_ip(ip_list)
    mainpv()

#-*- MAX Young 2019-09-18  -*-
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • HTTP基本原理 URI、URL、URN(Uninform Resource) URI(Identifier):統(tǒng)...
    GHope閱讀 2,285評(píng)論 2 26
  • 本文轉(zhuǎn)載自CSDN博客:https://blog.csdn.net/fei2636/article/details...
    林清貓耳閱讀 4,408評(píng)論 0 6
  • 調(diào)試了好久,iOS 8 系統(tǒng)可以,大于8就不行。 后來,發(fā)現(xiàn)是Masonry的屬性沒有配對(duì)使用 之前寫的是 后來改...
    豪冷閱讀 1,092評(píng)論 0 52
  • 很多時(shí)候我們都活在自己的想象中,根據(jù)過往經(jīng)驗(yàn)總結(jié),依賴邏輯推理,把有些試一下有可能的事情理所當(dāng)然就變成了不可能,內(nèi)...
    雨亦晗煙閱讀 522評(píng)論 2 1
  • 五一勞動(dòng)節(jié)之后全年級(jí)都改點(diǎn)了上午是7:30――8:00到校,中午11:30放學(xué),下午2:10――2:40到校...
    倔犟的張博聞閱讀 109評(píng)論 2 0

友情鏈接更多精彩內(nèi)容