重点
爬取wiki百科词条
1:原理
名称: a标签的text属性
url: a标签的href属性
2.使用工具
urllib 获取连接和请求数据
BeautifulSoup 解析数据,获取a标签
re 模糊搜索,获取连接地址
3.注意重点
请求头的封装,----------》》》user-agent
解码---------》》》read().decode("utf-8")
除去图片链接地址---------》》》if not re.search("\.(jpg|JPG|png)$", link["href"]):
代码
import re
from urllib.request import Request
from urllib.request import urlopen
from bs4 import BeautifulSoup as bs
"""
爬取wiki百科词条
1:原理
名称: a标签的text属性
url: a标签的href属性
2.使用工具
urllib 获取连接和请求数据
BeautifulSoup 解析数据,获取a标签
re 模糊搜索,获取连接地址
3.注意重点
请求头的封装,----------》》》user-agent
解码---------》》》read().decode("utf-8")
除去图片链接地址---------》》》if not re.search("\.(jpg|JPG|png)$", link["href"]):
"""
def t_():
url = "https://bk.tw.lvfukeji.com/baike-Wikipedia:%E9%A6%96%E9%A1%B5"
"""
req = Request(url)
req.add_header("user-agent",
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36")
"""
header = {
"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36"}
req = Request(url=url, headers=header)
res = urlopen(req).read().decode("utf-8")
soup = bs(res, "html.parser")
url_list = soup.find_all("a", href=re.compile(r"^https://bk.tw.lvfukeji.com/"))
for link in url_list:
if not re.search("\.(jpg|JPG|png)$", link["href"]):
print(link.string, "<<----------->>", link["href"])
if __name__ == '__main__':
t_()
"""
中文维基百科 <<----------->> https://bk.tw.lvfukeji.com/baike-Wikipedia:%E5%85%B3%E4%BA%8E
人人可編輯 <<----------->> https://bk.tw.lvfukeji.com/baike-Wikipedia:%E6%AC%A2%E8%BF%8E
自由 <<----------->> https://bk.tw.lvfukeji.com/baike-%E8%87%AA%E7%94%B1%E5%85%A7%E5%AE%B9
1,159,912 <<----------->> https://bk.tw.lvfukeji.com/baike-Special:%E7%BB%9F%E8%AE%A1
條目 <<----------->> https://bk.tw.lvfukeji.com/baike-Wikipedia:%E4%BB%80%E4%B9%88%E6%98%AF%E6%9D%A1%E7%9B%AE
分类 <<----------->> https://bk.tw.lvfukeji.com/baike-Wikipedia:%E5%88%86%E7%B1%BB%E7%B4%A2%E5%BC%95
主题 <<----------->> https://bk.tw.lvfukeji.com/baike-Portal:%E9%A6%96%E9%A0%81
求助 <<----------->> https://bk.tw.lvfukeji.com/baike-Wikipedia:VPA
入门 <<----------->> https://bk.tw.lvfukeji.com/baike-Wikipedia:%E6%96%B0%E6%89%8B%E5%85%A5%E9%96%80/%E4%B8%BB%E9%A0%81
沙盒 <<----------->> https://bk.tw.lvfukeji.com/baike-Wikipedia:%E6%B2%99%E7%9B%92
捐款 <<----------->> https://bk.tw.lvfukeji.com/baike-Wikipedia:%E8%81%94%E7%B3%BB%E6%88%91%E4%BB%AC/%E6%8D%90%E6%AC%BE
南方十字 <<----------->> https://bk.tw.lvfukeji.com/baike-%E5%8D%97%E6%96%B9%E5%8D%81%E5%AD%97_(%E6%97%A0%E5%AD%97%E5%B0%8F%E8%AF%B4)
无字小说 <<----------->> https://bk.tw.lvfukeji.com/baike-%E6%97%A0%E5%AD%97%E5%B0%8F%E8%AF%B4
核试验 <<----------->> https://bk.tw.lvfukeji.com/baike-%E6%A0%B8%E8%AF%95%E9%AA%8C
太平洋岛原住民 <<----------->> https://bk.tw.lvfukeji.com/baike-%E5%A4%AA%E5%B9%B3%E6%B4%8B%E5%B3%B6%E5%8E%9F%E4%BD%8F%E6%B0%91
美国军方在比基尼环礁核试验 <<----------->> https://bk.tw.lvfukeji.com/baike-%E5%8D%81%E5%AD%97%E8%B7%AF%E5%8F%A3%E8%A1%8C%E5%8A%A8
法朗士·麦绥莱勒 <<----------->> https://bk.tw.lvfukeji.com/baike-%E6%B3%95%E6%9C%97%E5%A3%AB%C2%B7%E9%BA%A6%E7%BB%A5%E8%8E%B1%E5%8B%92
其他典範條目 <<----------->> https://bk.tw.lvfukeji.com/baike-Wikipedia:%E5%85%B8%E7%AF%84%E6%A2%9D%E7%9B%AE
入殓师 <<----------->> https://bk.tw.lvfukeji.com/baike-%E9%80%81%E8%A1%8C%E8%80%85%EF%BC%9A%E7%A6%AE%E5%84%80%E5%B8%AB%E7%9A%84%E6%A8%82%E7%AB%A0
管胞 <<----------->> https://bk.tw.lvfukeji.com/baike-%E7%AE%A1%E8%83%9E"""