aws国内

import requests
import re
from lxml import etree

headers = {
‘User-Agent’: ‘Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36’
}
resp = requests.get(‘https://www.amazonaws.cn/ec2/pricing/ec2-linux-pricing/’, headers=headers)
all_area = resp.text.split(’<h3’)
all_area = all_area[1:]

通过h3标签分割

item = {}
for area in all_area:
# 区域名
area_name = ‘’.join(re.findall(’>(.*?)’, area))
item[area_name] = {}
# 实例名
area_sl = etree.HTML(area)
area_sl = area_sl.xpath(’//li[@class=“lb-accordion-group”]’)
for sl in area_sl:
# 所有的实例名字,比如按需实例
sl_name = ‘’.join(sl.xpath(’.//div[@class=“lb-txt-none lb-txt”]/text()’)).strip(’\n ‘)
# 所有的实例名字,比如按需实例
item[area_name][sl_name] = {}
sl1_name = ‘’
table_head = [i.lstrip(’\xa0’) for i in sl.xpath(’.//tr[1]/td/text()’)]

    for tr in sl.xpath('.//tr'):
        if ''.join(tr.xpath('.//td[1]/text()')).endswith('实例'):
            sl1_name = ''.join(tr.xpath('.//td[1]/text()'))
            item[area_name][sl_name][sl1_name] = []
            continue
        if sl1_name != '':
            if tr.xpath('./td/text()')[0]!='\xa0':
                item[area_name][sl_name][sl1_name].append(tr.xpath('./td/text()'))
            # print(tr.xpath('./td/text()'))
    # 实例下的所有类型实例
    # 获得表头

print(item)

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值