我正试图通过这个api捕捉我的客户的国家:http://api.hostip.info/get_html.php?ip=
我需要正则表达式才能捕获该国家。
我已经做到了:
Country\:.+\x28
这不好我需要只提取国家名称。
答案 0 :(得分:1)
这个正则表达式应该有效:
Country: ([\w\s]+) \(\w+\)
匹配一个或多个字母数字字符或空格的字符串,后跟括号中的一组一个或多个字母数字字符,并捕获第一组。
>>> import re
>>> import requests
>>> country_line = requests.get("http://api.hostip.info/get_html.php?ip=8.8.8.8").content.splitlines()[0]
>>> re.match(r"Country: ([\w\s]+) \(\w+\)", country_line).group(1)
'UNITED STATES'