zoukankan      html  css  js  c++  java
  • py3+urllib+re,轻轻松松爬取双色球最近100期中奖号码

    通过页面源码,发现使用正则表达式可以很方便的获取到我们需要的数据,最后循环写入txt文件。

    (d{2})表示两位数字
    [sS]表示匹配包括“
    ”在内的任何字符,匹配红球和蓝球之间的内容

    具体实现代码如下:
    import urllib.request
    import re
    url = 'http://baidu.lecai.com/lottery/draw/list/50?type=latest&num=100'
    def get():
        # 页面是utf8编码,所有解码成unicode
        html = urllib.request.urlopen(url).read().decode('utf8') # <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        # print(html)
        reg = r'<em>(d{2})</em><em>(d{2})</em><em>(d{2})</em><em>(d{2})</em><em>(d{2})</em><em>(d{2})</em>[sS]*?<em>(d{2})</em>'
        reg = re.compile(reg) # 把字符串类型的正则表达式编译成对象,提高匹配效率
        # print(re.findall(reg, html))
        return re.findall(reg, html)
    qiu = get()
    with open('qiu.txt', 'a+') as f:
        for i in qiu:
            print(i)
            for j in i:
                f.write(j+' ')
            f.write('
    ')
    

  • 相关阅读:
    keepass
    gpg
    Wireshark实践
    ssh
    namp
    第十二周
    第十一周
    第十周总结
    第九周学习总结
    编程语言
  • 原文地址:https://www.cnblogs.com/uncleyong/p/6958242.html
Copyright © 2011-2022 走看看