zoukankan      html  css  js  c++  java
  • 爬取*中奖信息

    (1) http://www.zhcw.com/ssq/kaijiangshuju/index.shtml?type=0,打开此网址,并通过浏览器中“检查”选项发现此网页数据来源规律;

     (2)发现他的这些信息都存在标签<tr>中

     (3)代码展示:

    爬取 1-5 页的中所有中奖的<开奖时间>、<期号>、<中奖号 码>、<销售额>、 <一等奖>、 <二等奖>信息存储至 CSV 文件。

     #将信息爬取出来并存在列表中
    form = []
    for i in range(1,5):
        url1 = "http://kaijiang.zhcw.com/zhcw/html/ssq/list_%s.html" %(i)
        html1 = requests.get(url1).text
        soup = BeautifulSoup(html1, 'html.parser')
        tag = soup.find_all('tr')
        # print(tag)
        for a in tag[2:len(tag) - 1]:
            temp = []
            for b in a.contents[0:12]:
                if (b != '
    '):
                    temp += [b.text.strip().replace('
    ', '').replace(' ', '').replace('
    ', ' ')]
            form.append(temp)

    存到csv中:

    with open('双色球中奖信息.csv','w',newline='',encoding='utf-8') as f:
        writer = csv.writer(f)
        writer.writerow(['开奖日期', '期号', '中奖号码', '销售额(元)', '一等奖', '二等奖'])
        for a in form:
            print(a)
            writer.writerow(a)

    运行结果:

     总结:

    推荐使用lxml解析库,必要时使用html.parser
    标签选择筛选功能弱但是速度快
    建议使用find()、find_all() 查询匹配单个结果或者多个结果
    如果对CSS选择器熟悉建议使用select()
    记住常用的获取属性和文本值的方法

  • 相关阅读:
    用Asp获取Dll加密新闻内容
    Silverlight编译范围
    c++连接mssql
    委托理解
    NClass,终于找到了可以绘制类图的工具了!
    RIATasks: A Simple Silverlight CRUD Example (using View Model)
    PetaPoco使用
    匿名方法,Action,Func以及lambda的区别
    第一个c++
    System.Threading中Thread和Task区别
  • 原文地址:https://www.cnblogs.com/wt714/p/12003239.html
Copyright © 2011-2022 走看看