某节课的作业 关于爬取代理IP地址
import urllib.requestimport re
url = 'http://www.xicidaili.com/nn'
req = urllib.request.Request(url)
req.add_header('User-Agent','Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36'
)
response = urllib.request.urlopen(req)
html = response.read().decode('utf-8')
result = re.findall(r'(((2\d|25|{0,1}\d{0,1}\d)\.){3}(2\d|25|{0,1}\d{0,1}\d))',html)
print(html)
print(result)
代码如上,爬取后得到的结果如图。
IP地址是得到了,但是它后面跟一串奇怪的数字。是我的正则表达式错了吗?
先谢谢了。 58.250.96.64这个是IP 但是它后面还跟了96. 96 64 这几个 在小括号前加上?:
具体改成
r'((?:(?:2\d|25|{0,1}\d{0,1}\d)\.){3}(?:2\d|25|{0,1}\d{0,1}\d))' foolwolf0068 发表于 2017-9-20 20:23
在小括号前加上?:
具体改成
r'((?:(?:2\d|25|{0,1}\d{0,1}\d)\.){3}(?:2\d| ...
不行呀,老哥。什么都找不到了。。。
能告诉我为什么在括号前加这个吗? 我了要认真了 发表于 2017-9-21 12:58
不行呀,老哥。什么都找不到了。。。
能告诉我为什么在括号前加这个吗?
这是贪婪搜索,建议你再去听甲鱼的正则表达式的那几课吧
页:
[1]