zoukankan      html  css  js  c++  java
  • Python:黑板课爬虫闯关第一关

    近日发现了【黑板课爬虫闯关】这个神奇的网页,练手爬虫非常的合适

    地址:http://www.heibanke.com/lesson/crawler_ex00/

    第一关非常的简单

    get 请求网址,在响应的 html 中用正则获取需要在网址后面输入的数字,生成新的 url,继续请求,直到通关。

    代码如下:

    import re
    import requests
    import time
    
    
    def main():
        url = 'http://www.heibanke.com/lesson/crawler_ex00/'
        get_next(url)
    
    
    def get_next(url):
        print(url)
        html = requests.get(url).text
        m = re.search('(你需要在网址后输入数字|下一个你需要输入的数字是)(d+)', html)
        if m:
            num = m.group(2)
            next_url = 'http://www.heibanke.com/lesson/crawler_ex00/' + num
            time.sleep(1)
            get_next(next_url)
        else:
            m = re.search('(?<=<h3>).*?(?=</h3>)', html)
            print(m.group())
            m = re.search('(<).*?href="([^"]*?)".*?(>下一关</a>)', html)
            print(f'下一关 http://www.heibanke.com{m.group(2)}')
    
    
    if __name__ == '__main__':
        main()
  • 相关阅读:
    表值参数学习
    js闭包
    vue相关
    js的面向对象
    JavaScript中template模板引擎
    使用原生的ajax的步骤(五个步骤)
    (a ==1 && a== 2 && a==3) 有可能是 true 吗?
    这道JS笔试题你做对了吗?
    JS事件分类
    JS事件绑定模型
  • 原文地址:https://www.cnblogs.com/gl1573/p/9650887.html
Copyright © 2011-2022 走看看