一、示例代码:
import re
import requests
headers = {
"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/"
"85.0.4183.83 Safari/537.36"}
resp = requests.get('http://news.baidu.com/', headers=headers)
results = re.findall('"(https?://.*?)"', resp.text)
for result in results:
print(result)
二、运行结果:
三、要点解析:
正则表达式'"(https?://.*?)"'中第一个问号可以将https与http即加密与非加密的两种协议的超链接均匹配出来。第二个问号是非贪婪匹配模式(.*?)中的问号。