Created
April 10, 2019 15:27
-
-
Save Warm-rain/d8f4ee9362deafc33a8bcc7dc430b975 to your computer and use it in GitHub Desktop.
看着自己写的文章浏览数一点一点增加是非常开心的,但总感觉浏览数增长地太慢了,于是自然想到,为什么不能写一个小程序自动刷博客浏览量呢?Let's do it 首先,我们尝试用requests打开博客url,看看浏览量是否会增加(当然要用到一点点伪装技术)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
```python | |
import re | |
import requests | |
from requests import RequestException | |
import time | |
import random | |
def get_page(url): | |
try: | |
headers = { | |
'Referer': 'https://blog.csdn.net', # 伪装成从CSDN博客搜索到的文章 | |
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.75 Safari/537.36' # 伪装成浏览器 | |
} | |
response = requests.get(url, headers=headers) | |
if response.status_code == 200: | |
return response.text | |
return None | |
except RequestException: | |
print('请求出错') | |
return None | |
def parse_page(html): | |
try: | |
read_num = int(re.compile('<span.*?read-count.*?(\d+).*?</span>').search(html).group(1)) | |
return read_num | |
except Exception: | |
print('解析出错') | |
return None | |
def main(): | |
try: | |
url = 'https://blog.csdn.net/polyhedronx/article/details/81479125' # 待刷浏览量博客的url | |
while 1: | |
html = get_page(url) | |
if html: | |
read_num = parse_page(html) | |
if read_num: | |
print('当前阅读量:', read_num) | |
sleep_time = random.randint(60, 120) | |
print('please wait', sleep_time, 's') | |
time.sleep(sleep_time) # 设置访问频率,过于频繁的访问会触发反爬虫 | |
except Exception: | |
print('出错啦!') | |
if __name__ == '__main__': | |
main() | |
``` |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment