zoukankan      html  css  js  c++  java
  • python实现的刷博客浏览量(有待改进)

    python3.4,

    使用了url.request,re ,bs4这些库,

    在mooc看了很久爬虫的代码,

    感觉自己可以实现这么一个贱贱的功能,

    但是写完了之后访问页面是可以的,

    但是浏览量并不增加。

    宝宝心里苦,

    感觉还要每次清空Cookie,

    有空再改。

    import urllib.request
    import re
    import time
    import random
    from bs4 import BeautifulSoup
    
    p = re.compile('/MnsterLu/p/............')
    #自己的博客主页
    url = "http://www.cnblogs.com/MnsterLu/"
    #http://www.cnblogs.com/MnsterLu/p/5532399.html
    #http://www.cnblogs.com/MnsterLu/p/5518372.html
    
    #让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://www.cnblogs.com"#需要将网址合并的部分
    #页面中的网址有重复的,需要使用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.5)#正常停顿,以免服务器拒绝访问
  • 相关阅读:
    生命周期钩子函数
    Spring Cloud Alibaba-Gateway之路由、限流、熔断、日志、鉴权(3)
    SpringBoot项目基础搭建(1)
    Spring Cloud Alibaba-Sentinel之限流、熔断(2)
    cap理论? cp ap原则的含义
    Spring Cloud Alibaba-Nacos配置、注册(1)
    SpringCloud路由Gateway(5)
    SpringCloud熔断监控Hystrix Dashboard和Turbine(4)
    SpringCloud熔断器Hystrix引用feign(3)
    SpringCloud注册中心Eureka(2)
  • 原文地址:https://www.cnblogs.com/MnsterLu/p/5535991.html
Copyright © 2011-2022 走看看