首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从输出中去掉unicode 'u‘?Python

如何从输出中去掉unicode 'u‘?Python
EN

Stack Overflow用户
提问于 2016-04-27 04:49:15
回答 2查看 204关注 0票数 1

下面的代码在sec组中查找0.0.0.0/0,并在松弛时打印。

代码语言:javascript
运行
复制
def getTag(connection, instanceId):
    reservations=connection.get_all_instances(filters={'instance_id':instanceId})
    for res in reservations:
      for instance in res.instances:
        if instance.state == "running":
           return instance.tags['Name'],instance.private_ip_address,instance.region
        else:
           return None

#regions = ['us-east-1','us-west-1','us-west-2','eu-west-1','sa-east-1','ap-southeast-1','ap-southeast-2','ap-northeast-1']
#regions = ['us-west-2','eu-central-1','ap-southeast-1']  ##Prod VPC
regions = ['us-west-2']
data = []
header = ["Port","Open For","Security group","Instance Details"]

for region in regions:
    connection=ec2.connect_to_region(region)
    sg = connection.get_all_security_groups()
    try:
        for securityGroup in sg:
           for rule in securityGroup.rules:
               if '0.0.0.0/0' in str(rule.grants):
                  for instanceid in securityGroup.instances():
                      instanceId=str(instanceid)
                     # print instanceId
                      tag = getTag(connection, instanceId.split(':')[1])
                      if tag is not None:
                        # print tab              
                         tab =[str(rule.to_port),"0.0.0.0/0",str(securityGroup.name),str(getTag(connection, instanceId.split(':')[1]))]
                         data.append(tab)
    except Exception,e:
        pass

print tabulate(data, headers=header, tablefmt='simple')
cool_stuff = tabulate(data, headers=header, tablefmt='simple')
slack.chat.post_message('#scanbot','```'+cool_stuff+'```',username='AWS_security_group_scanner')

问题是,这个打印:

代码语言:javascript
运行
复制
 Port  Open For    Security group                     Instance Details
------  ----------  ---------------------------------  ----------------------------------------------------------------------------------
  1433  0.0.0.0/0   default                            (u'ABCcorp', u'10.17.9.22', RegionInfo:us-west-2)
    80  0.0.0.0/0   pdx01-ms-dev-elbs                  (u'dev-lb05', u'10.17.5.249', RegionInfo:us-west-2)
    80  0.0.0.0/0   pdx01-ms-dev-elbs                  (u'dev-sdl-lb02', u'10.17.5.63', RegionInfo:us-west-2)
    80  0.0.0.0/0   pdx01-ms-dev-elbs                  (u'lbCasio', u'10.17.5.11', RegionInfo:us-west-2)
    80  0.0.0.0/0   pdx01-ms-dev-elbs                  (u'lb01', u'10.17.4.196', RegionInfo:us-west-2)
    80  0.0.0.0/0   pdx01-ms-dev-elbs                  (u'lb01', u'10.17.5.133', RegionInfo:us-west-2)
    80  0.0.0.0/0   pdx01-ms-dev-elbs                  (u'gehc-lb01', u'10.17.5.222', RegionInfo:us-west-2)
   443  0.0.0.0/0   pdx01-ms-dev-elbs                  (u'lb05', u'10.17.5.249', RegionInfo:us-west-2)

我想摆脱‘你’,因为他们在捣乱松懈的东西。有人能帮我吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-04-27 04:56:08

改变这个

代码语言:javascript
运行
复制
tab  = [str(rule.to_port), "0.0.0.0/0", str(securityGroup.name), str(getTag(connection, instanceId.split(':')[1]))]

代码语言:javascript
运行
复制
tab  = [str(rule.to_port), "0.0.0.0/0", str(securityGroup.name), tuple(list(i.encode('UTF8') for i in getTag(connection, instanceId.split(':')[1])[0:2] ) + [getTag(connection, instanceId.split(':')[1])[2]] )]
票数 2
EN

Stack Overflow用户

发布于 2016-04-27 04:55:13

希望这行得通

代码语言:javascript
运行
复制
import unicodedata
for region in regions:
    connection=ec2.connect_to_region(region)
    sg = connection.get_all_security_groups()
    try:
        for securityGroup in sg:
           for rule in securityGroup.rules:
               if '0.0.0.0/0' in str(rule.grants):
                  for instanceid in securityGroup.instances():
                      instanceId=str(instanceid)
                     # print instanceId
                      tag = getTag(connection, instanceId.split(':')[1])
                      if tag is not None:
                        # print tab              
                         tab =[str(rule.to_port),"0.0.0.0/0",str(securityGroup.name),unicodedata.normalize('NFKD', getTag(connection, instanceId.split(':')[1])).encode('ascii','ignore')]
                         data.append(tab)
    except Exception,e:
        pass
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36880555

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档