爬虫:页面内容提取,HTML直接输出为Markdown格式
注意:对内联公式效果较差,建议用https://editor.mdnice.com/的SitDown
爬虫:页面内容提取,HTML直接输出为Markdown格式,对CSDN博客有效
这种方法也可以提取博客中水印图片的原图。
1. 提取HTML中的作者、发布日期与内容信息
pip install gne
# 1. 获取页面文本
import requests
import kuser_agent #pip install kuser_agent
url = 'https://blog.csdn.net/weixin_54227557?type=blog'
html = requests.get(url=url,headers={'User-Agent':kuser_agent.get()}).text
# 2.提取关键内容
import gne
extractor = gne.GeneralNewsExtractor()
result = extractor.extract(html)
for key in result.keys():
print(key,':',result[key])
2. 把HTML转成Markdown的文本
# 1. 获取整个页面数据
import requests
import kuser_agent
url = 'https://blog.csdn.net/weixin_54227557/article/details/122254246?spm=1001.2014.3001.5502'
html = requests.get(url=url,headers={'User-Agent':kuser_agent.get()}).content
# 2. 提取正文中的HTML文本
from bs4 import BeautifulSoup
bs = BeautifulSoup(html)
text = bs.find(attrs={'id':'article_content'}).prettify()
# 3. 将HTML文本转成Markdown格式
import html2text
ht = html2text.HTML2Text()
# 一般的参数设置
ht.bypass_tables = False
ht.mark_code = True
ht.code = True
# --------------
result = ht.handle(text)
print(result)