zoukankan      html  css  js  c++  java
  • Python一日一练05----怒刷点击量

    功能

    自己主动获取CSDN文章列表,并对每篇文章添加点击量.







    源代码

    import urllib.request
    import re
    import time
    import random
    from bs4 import BeautifulSoup
    
    p = re.compile('/a359680405/article/details/........')
    
    #自己的博客主页
    url = "http://blog.csdn.net/a359680405"
    
    #使用build_opener()是为了让python程序模仿浏览器进行訪问
    opener = urllib.request.build_opener()
    opener.addheaders = [('User-agent', 'Mozilla/5.0')]
    
    html = opener.open(url).read().decode('utf-8')
    
    allfinds = p.findall(html)
    print(allfinds)
    
    urlBase = "http://blog.csdn.net"#须要将网址合并的部分
    #页面中的网址有反复的,须要使用set进行去反复
    mypages = list(set(allfinds))
    for i in range(len(mypages)):
        mypages[i] = urlBase+mypages[i]
    
    print('要刷的网页有:')
    for index , page in enumerate(mypages) :
        print(str(index), page)
    
    #设置每一个网页要刷的次数
    brushMax = 200
    
    #全部的页面都刷
    print('以下開始刷了哦:')
    for index , page in enumerate(mypages) :
        brushNum=random.randint(0,brushMax)
        for j in range(brushNum):
            try :
                pageContent = opener.open(page).read().decode('utf-8')
                #使用BeautifulSoup解析每篇博客的标题
                soup = BeautifulSoup(pageContent)
                blogTitle = str(soup.title.string)
                blogTitle = blogTitle[0:blogTitle.find('-')]
                print(str(j) , blogTitle) 
                
            except urllib.error.HTTPError:
                print('urllib.error.HTTPError')
                time.sleep(1)#出现错误。停几秒先
                
            except urllib.error.URLError:
                print('urllib.error.URLError')
                time.sleep(1)#出现错误,停几秒先
            time.sleep(0.1)#正常停顿,以免server拒绝訪问
    

    
  • 相关阅读:
    C++开发系列-友元函数 友元类
    C++开发系列-C语言的malloc与C++的new分配空间
    C++开发系列-内联函数
    iOS开发系列-Foundation与CoreFoundation内存管理
    C开发系列-字符串
    C开发系列-数组
    列表 元组 字典
    神奇的print
    while 语句的逻辑
    <Web Crawler><Java><thread-safe queue>
  • 原文地址:https://www.cnblogs.com/yxwkf/p/5251156.html
Copyright © 2011-2022 走看看