獲取CSDN文章內(nèi)容并轉(zhuǎn)換為markdown文本的python
自己寫(xiě)的小工具,可以直接獲取csdn文章并轉(zhuǎn)換為markdown格式
效果圖

核心代碼
from PySide2.QtWidgets import QApplication,QMainWindow,QPushButton,QPlainTextEdit,QMessageBox
import re
import parsel
import tomd
import requests
class CSDN():
def __init__(self):
self.windows = QMainWindow()
self.windows.resize(450, 300)
self.windows.setWindowTitle("輕松獲取csdn文章--by tansty")
self.setup_ui()
self.set_connect()
def set_connect(self):
#設(shè)置建立聯(lián)系
self.button.clicked.connect(self.spider_csdn)
def setup_ui(self):
#設(shè)置ui界面的建立
self.button = QPushButton(self.windows)
self.button.resize(100, 100)
self.button.move(150, 150)
self.button.setText("獲取文章")
self.text = QPlainTextEdit(self.windows)
self.text.setPlaceholderText("請(qǐng)輸入需要獲取文章的鏈接")
self.text.resize(450, 100)
def spider_csdn(self):
# 目標(biāo)文章的鏈接
title_url=self.text.toPlainText()
MessageBox = QMessageBox(self.windows)
if not title_url:
MessageBox.critical(self.windows, "錯(cuò)誤", "請(qǐng)輸入網(wǎng)址")
return
head={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36 Edg/84.0.522.52"
}
html=requests.get(url=title_url,headers=head).text
page=parsel.Selector(html)
#創(chuàng)建解釋器
title=page.css(".title-article::text").get()
res = re.compile("[^\u4e00-\u9fa5^a-z^A-Z^0-9]")
restr = ''
res.sub(restr, title)
content=page.css("article").get()
content=re.sub("<a.*?a>","",content)
content = re.sub("<br>", "", content)
texts=tomd.Tomd(content).markdown
#轉(zhuǎn)換為markdown 文件
with open(title+".md",mode="w",encoding="utf-8") as f:
f.write("#"+title)
f.write(texts)
MessageBox.information(self.windows,"正確","獲取文章完成")
if __name__ == '__main__':
app = QApplication()
csdn=CSDN()
csdn.windows.show()
app.exec_()
文件打包下載 鏈接: https://pan.baidu.com/s/1R6RcrDagwf1vWzmRCBja4w 提取碼: ug6n
- 基于Python實(shí)現(xiàn)Excel轉(zhuǎn)Markdown表格
- Python實(shí)戰(zhàn)之markdown轉(zhuǎn)pdf(包含公式轉(zhuǎn)換)
- Python實(shí)現(xiàn)Word文檔轉(zhuǎn)換Markdown的示例
- Python3自動(dòng)生成MySQL數(shù)據(jù)字典的markdown文本的實(shí)現(xiàn)
- python使用html2text庫(kù)實(shí)現(xiàn)從HTML轉(zhuǎn)markdown的方法詳解
- Python自動(dòng)創(chuàng)建Markdown表格使用實(shí)例探究
相關(guān)文章
自定義Django_rest_framework_jwt登陸錯(cuò)誤返回的解決
這篇文章主要介紹了自定義Django_rest_framework_jwt登陸錯(cuò)誤返回的解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10
python使用turtle庫(kù)寫(xiě)六角形的思路與代碼
學(xué)習(xí)Python,接觸到turtle包,就用它來(lái)畫(huà)一下六邊形,下面這篇文章主要給大家介紹了關(guān)于python使用turtle庫(kù)寫(xiě)六角形的思路與代碼,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-11-11
詳解NumPy中的線性關(guān)系與數(shù)據(jù)修剪壓縮
本文將通過(guò)股票均線計(jì)算的案例來(lái)為大家講解一下NumPy中的線性關(guān)系以及數(shù)據(jù)修剪壓縮的實(shí)現(xiàn),文中的示例代碼講解詳細(xì),感興趣的可以了解一下2022-05-05
使用Python實(shí)現(xiàn)屏幕截圖功能的詳細(xì)教程
Python使用ImageGrab截圖主要依賴(lài)于Pillow庫(kù)(PIL庫(kù)的一個(gè)分支),該庫(kù)提供了ImageGrab模塊來(lái)實(shí)現(xiàn)屏幕截圖功能,以下是一個(gè)詳細(xì)的截圖教程,需要的朋友可以參考下2025-01-01
python用moviepy對(duì)視頻進(jìn)行簡(jiǎn)單的處理
這篇文章主要介紹了python如何用moviepy對(duì)視頻進(jìn)行簡(jiǎn)單的處理,幫助大家更好的利用python處理視頻,感興趣的朋友可以了解下2021-03-03
Pandas實(shí)現(xiàn)在線文件和剪貼板數(shù)據(jù)讀取詳解
這篇文章主要為大家介紹的是Pandas兩種少用的讀取文件方式:讀取在線文件的數(shù)據(jù)和讀取剪貼板的數(shù)據(jù),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2022-06-06
Python修改IP地址的常見(jiàn)方法總結(jié)
在網(wǎng)絡(luò)編程中,可能會(huì)遇到需要修改IP地址的情況,Python提供了一些功能強(qiáng)大的庫(kù)和模塊,可以幫助我們實(shí)現(xiàn)IP地址的修改操作,本文將介紹幾種常見(jiàn)的方法,以及如何使用它們來(lái)修改IP地址,需要的朋友可以參考下2023-12-12
python實(shí)現(xiàn)加密的方式總結(jié)
這篇文章主要介紹了python實(shí)現(xiàn)加密的方式總結(jié),文中給大家提到了python中加密的注意點(diǎn),通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-01-01
使用Python來(lái)批量檢測(cè)并刪除Word文檔中的宏
Word文檔作為最常用的電子文檔格式之一,經(jīng)常被用來(lái)作為內(nèi)容分享工具,在網(wǎng)絡(luò)中或設(shè)備之間進(jìn)行傳輸,其安全性也需要受到關(guān)注,宏是可嵌入Word文檔中的一種VBA迷你程序,本文將介紹如何使用Python來(lái)批量檢測(cè)并刪除Word文檔中的宏,保護(hù)計(jì)算機(jī)的安全,需要的朋友可以參考下2024-07-07
Python+wxPython實(shí)現(xiàn)自動(dòng)生成PPTX文檔程序
這篇文章主要介紹了如何使用 wxPython 模塊和 python-pptx 模塊來(lái)編寫(xiě)一個(gè)程序,用于生成包含首頁(yè)、內(nèi)容頁(yè)和感謝頁(yè)的 PPTX 文檔,感興趣的小伙伴可以學(xué)習(xí)一下2023-08-08

