链接爬虫
import re import urllib.request def getlink(url): headers=("Mozilla/5.0","(Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36") opener=urllib.request.build_opener() opener.addheaders=[headers] urllib.request.install_opener(opener) file=urllib.request.urlopen(url) data=str(file.read()) 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])
(1)确定好要爬取的入口链接
(2)根据需求构建好链接提取的正则表达式
(3)模拟成浏览器并爬取对应网页
(4)根据(2)中的正则表达式提取出该网页中包含的链接
(5)过滤掉重复的链接
(6)后续操作