鱼C论坛

 找回密码
 立即注册
查看: 2676|回复: 4

某节课的作业 关于爬取代理IP地址

[复制链接]
发表于 2017-9-20 19:29:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
import urllib.request
import 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[0-4]\d|25[0-5]|[0,1]{0,1}\d{0,1}\d)\.){3}(2[0-4]\d|25[0-5]|[0,1]{0,1}\d{0,1}\d))',html)

print(html)

print(result)


代码如上,爬取后得到的结果如图。
IP地址是得到了,但是它后面跟一串奇怪的数字。是我的正则表达式错了吗?
先谢谢了。
捕获.PNG
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2017-9-20 19:31:01 | 显示全部楼层
58.250.96.64这个是IP 但是它后面还跟了96.    96    64    这几个
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-20 20:23:54 | 显示全部楼层
在小括号前加上?:
具体改成
r'((?:(?:2[0-4]\d|25[0-5]|[0,1]{0,1}\d{0,1}\d)\.){3}(?:2[0-4]\d|25[0-5]|[0,1]{0,1}\d{0,1}\d))'
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-9-21 12:58:17 | 显示全部楼层
foolwolf0068 发表于 2017-9-20 20:23
在小括号前加上?:
具体改成
r'((?:(?:2[0-4]\d|25[0-5]|[0,1]{0,1}\d{0,1}\d)\.){3}(?:2[0-4]\d| ...

不行呀,老哥。什么都找不到了。。。
能告诉我为什么在括号前加这个吗?
捕获.PNG
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-22 10:37:12 | 显示全部楼层
我了要认真了 发表于 2017-9-21 12:58
不行呀,老哥。什么都找不到了。。。
能告诉我为什么在括号前加这个吗?

这是贪婪搜索,建议你再去听甲鱼的正则表达式的那几课吧
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-12-24 01:29

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表