日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

keil生成hex文件找不到_骚操作!用Python把公众号文章打包成pdf文件,再也不怕找不到了...

發布時間:2024/9/15 python 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 keil生成hex文件找不到_骚操作!用Python把公众号文章打包成pdf文件,再也不怕找不到了... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

背景

做自媒體的人,尤其是做了一年甚至更久的自媒體人,尤其是通過自媒體還有一些小收入的人,他們最怕自己的公眾號內容因為各種原因而丟失,那就太可怕了! 在做自媒體內容上花了太多心血,如果突然一下就沒了,那打擊是相當大的,所以備份好自己的成果是非常重要的.

像我之前沒有這方面意識,最近我做了一個小工具,把公眾號文章打包成pdf文件,然后保存到本地,免去后顧之憂.

其實我之前寫過了相關的文章,但那個時候寫的還不是很好,不算完美,因為打包出來的文件,看不到圖片,所以一直覺得有瑕疵!

在看這篇文章之前可以看之前的這兩篇, 這樣你看這篇文章就不會覺得很突然.

用Python抓取某大V的公眾號文章

Python抓取公眾號文章并生成pdf文件保存到本地

最近我終于把這個瑕疵給解決了, 另外再解決了其它的幾個問題,算是比較完美的升級吧!

先看效果圖:

有目錄,有圖片。

解決圖片顯示問題,先看生成的pdf文件樣子

其實直接獲取到公眾號文章的url就可以通過pdfkit工具包來生成一個pdf文件,但是這樣獲取出來的pdf文件圖片是顯示不出來的。

因為公眾號文章里的圖片是用data-src來標記的,這在pdf中是不能顯示圖片,所以我在這里把,data-src替換成了src,然后圖片就可以顯示出來.

def create_article_content(self, url, text): """文章內容""" str = '點擊查看公眾號原文'.format( url) + text.replace('data-src', 'src') return str

這部分代碼的含義: url 是公眾號原文鏈接,text 是公眾號網頁內容這里面包含了樣式.

因為我把內容抓取過來后,我還想去點擊原文,所以有了這個超鏈接,像上面圖片中的【點擊查看公眾號原文】,再看看如何生成pdf文件.

生成pdf文件

單篇文章生成一個文件

每篇文章就是一個文件,但這種生成文件的方式比較慢,好處就是每篇文章單獨成一個文件. 看效果圖:

具體代碼如下:

def creat_pdf_file(self, title, html_content): html = 'tmp.html' # 這里是存放臨時html文件with open(html, 'w', encoding='utf-8') as f: # 點擊open函數查看用法,這里是寫入不要搞錯了 f.write(html_content)try: output_file = 'D:/gzh2/{}.pdf'.format(title)if not os.path.exists(output_file): # 過濾掉重復文件 pdfkit.from_file(html, output_file, configuration=self.config, ) # 注意這里需要配置一下wkhtmltopdfexcept Exception as e: print(sys._getframe().f_code.co_name) print(e)finally: os.remove(html)

title是文件名, html_content是文件內容,這里把文件內容定稿到一個臨時的html文件中,然后把這個臨時的html文件用pdfkit工具轉換成pdf文件.

所有文章生成一個文件

這里是把所有的html文件內容組成一個數組,然后把這些內容列表轉換成html的文件列表,然后把html文件列表放到pdfkit中轉換成一個pdf文件,這個好處就是比較快速,但是所有的文件都放到一個文件中,感覺不利于閱讀,也看各人喜好吧,效果圖如下:

看代碼

def creat_pdf_file(self): htmls = []for index, file in enumerate(self.html_contents): html = '{}.html'.format(index) # 這里是存放臨時html文件 with open(html, 'w', encoding='utf-8') as f: # 點擊open函數查看用法,這里是寫入不要搞錯了 f.write(file) htmls.append(html)try: output_file = 'D:/gzh2/{}_的原創文章_第【{}-{}】篇.pdf'.format(self.gzh_name, (self.index_part - 1) * self.part_offset + 1,self.index_part * self.part_offset)if not os.path.exists(output_file): # 過濾掉重復文件 pdfkit.from_file(htmls, output_file, configuration=self.config, ) # 注意這里需要配置一下wkhtmltopdf except Exception as e:print(sys._getframe().f_code.co_name)print(e)finally:self.html_contents = [] # 生成文件后,清空緩存for file in htmls: os.remove(file)

注意點

我這里是用Charles來通過抓數據來進行分析的,其中獲取文件的接口列表與cookie會有變化的,每次請求不同公眾號,這里面的數據也不會相同,所以不管了,直接復制charles里的 url和cookie就好了, 所以你不能直接用我代碼里的的cookie和base_url

看下面的圖:

最后完整代碼,關注,轉發,后臺私信小編“01”獲取,公眾號回復,贈送Python學習資料。

總結

以上是生活随笔為你收集整理的keil生成hex文件找不到_骚操作!用Python把公众号文章打包成pdf文件,再也不怕找不到了...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。