python通过正则获取网页上的全部链接

2022-03-15 00:00:00 获取 链接 正则

这段代码可以抓取皮蛋编程主页(http://www.pidancode.com)上的所有URL链接,放在列表里输出

"""
作者:皮蛋编程(www.pidancode.com)
创建日期:2022/3/15
修改日期:2022/3/15
功能描述:正则表达式获取页面商的全部链接
"""
from bs4 import BeautifulSoup
from urllib import request

# 要请求的网址
url = 'http://www.pidancode.com'

# 获取http://www.pidancode.com的页面的HTML代码
html = request.urlopen(url)

# 对html代码进行分析
soup = BeautifulSoup(html, 'html.parser')

# 找出所有的a标签
data = soup.find_all('a')

url_list = list()

# 遍历a标签, 获取它们的href属性
for item in data:
    # 过滤掉href=javascript和#的链接
    if item.string is not None and item['href'] != 'javascript:;' and item['href'] != '#':
        url = item.get('href', '')
        url_list.append(url)

# 输出所有链接
print(url_list)

相关文章