思路:
1 确定入口链接
2 构造链接提取正则表达式
3 模拟成浏览器
4 过滤重复链接
示例:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import re
import urllib.request
def getlink(url):
headers=("User-Agent","Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36")
opener=urllib.request.build_opener()
opener.addheaders=[headers]
urllib.request.install_opener(opener)
file=urllib.request.urlopen(url).read()
data=str(file)
pat='(https?://[^\s)";]+\.(\w|/)*)'
link=re.compile(pat).findall(data)
link=list(set(link))
return link
url="http://blog.csdn.net/"
linklist=getlink(url)
for link in linklist:
print(link[0])
程序结果:
提取成功
转载于:https://blog.51cto.com/superleedo/2123491