api提取国家与html的正则表达式

时间:2013-09-27 11:12:10

标签: regex

我正试图通过这个api捕捉我的客户的国家:http://api.hostip.info/get_html.php?ip=

我需要正则表达式才能捕获该国家。

我已经做到了:

Country\:.+\x28

这不好我需要只提取国家名称。

1 个答案:

答案 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'