cnbrave 发表于 2020-1-9 11:22

双色球, 超级大乐透查询。

本帖最后由 cnbrave 于 2020-1-9 11:25 编辑

朋友叫我爬取最近一期的双色球,刚好现学现用,就试着做出来了,请大家指点。
import requests
from lxml import etree

'''
type=1 双色球,type=2 超级大乐透。
url_num为空时,最新一期信息。
url_num也可以输入具体第几期。
'''
def main(type=1, url_num=''):
    url = ''
    ua_headers = {"User-Agent": 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0)'}
    type_title = ''
    if type == 1:
      type_title = '双色球 第 '
      if url_num == '':
            url = 'https://kaijiang.500.com/ssq.shtml'
      else:
            url = 'https://kaijiang.500.com/shtml/ssq/' + url_num + '.shtml'
    else:
      type_title = '超级大乐透 第 '
      if url_num == '':
            url = 'http://kaijiang.500.com/dlt.shtml'
      else:
            url = 'https://kaijiang.500.com/shtml/dlt/' + url_num + '.shtml'

    try:
      response = requests.get(url=url, headers=ua_headers).text
      tree = etree.HTML(response)
      td_title01 = "\r\n" + type_title + str((tree.xpath("//font[@class='cfont2']/strong/text()"))) + " 期:"
      num_lst = tree.xpath("//div[@class='ball_box01']/ul/li/text()")
      print(td_title01)
      print("开奖号码:", end='')
      for num in num_lst:
            print(num, end=' ')
      print("\r\n出球顺序:", end='')
      sort_lst = tree.xpath('normalize-space(//table[@class="kj_tablelist02"]/tr/td/table/tr/td/text())')
      print(sort_lst)
      print('\r\n**************************************************************')
    except(Exception):
      print("程序错误,请检查!\r\n" + Exception)

if __name__ == '__main__':
    main(1) # 双色球
    main(2) # 超级大乐透

RoyPenn 发表于 2020-1-22 15:09

可以的,比我写的好多了

春天的萌动 发表于 2020-1-9 11:40

500.com 是500万的意思吗

金龙君 发表于 2020-1-9 11:42

我以为预测的呢

随心所欲是妄想 发表于 2020-1-9 12:12

春天的萌动 发表于 2020-1-9 11:40
500.com 是500万的意思吗

网站地址吧

ffdn2002 发表于 2020-1-9 17:35

下载的格式是啥啊,无法运行啊

a2523188267 发表于 2020-5-2 17:07

感谢 ,学习一下抓取

yingxiong 发表于 2020-5-6 08:27

不错 支持一下 ~

玄凯 发表于 2020-5-15 09:55

虽然我不知道有什么用,不过还是支持一下

nhc2008 发表于 2020-6-3 16:02

我以为预测的呢
页: [1] 2
查看完整版本: 双色球, 超级大乐透查询。