操屁眼的视频在线免费看,日本在线综合一区二区,久久在线观看免费视频,欧美日韩精品久久综

新聞資訊

    最近參考一些技術(shù)文章同時(shí)結(jié)合自己的思考用寫了個(gè)可以批量保存微信文章的小工具。實(shí)現(xiàn)的功能是通過微信文章的鏈接將文章保存為圖片、HTML以及PDF,使用方法很簡單,不懂技術(shù)也能用。

    寫這個(gè)小工具源于我的一個(gè)習(xí)慣,在看到喜歡或者有啟發(fā)的微信文章時(shí),除了在微信收藏,我還會(huì)把它們保存下來。

    一般手動(dòng)操作的步驟,首先是把某篇公眾號(hào)文章的鏈接放到谷歌瀏覽器的地址欄來打開文章,然后使用谷歌瀏覽器的打印功能將文章保存為PDF,按F12調(diào)出調(diào)試窗口后再按ctrl+shift+p調(diào)出命令輸入框接著輸入 full size 按回車后保存為圖片。

    一篇兩篇文章這樣操作還沒什么,一旦想要保存的文章多了我就得一遍又一遍地重復(fù)上面的操作,這無疑是非常繁瑣的。為了提高效率,我把這些步驟寫成腳本,用來自動(dòng)幫我完成,于是就有了這個(gè)工具。

    只需要將公眾號(hào)文章的鏈接放入到某個(gè)特定的txt文件,然后運(yùn)行工具就可以批量地將微信文章保存為圖片、HTML以及PDF。比之前的手動(dòng)步驟方便多了。

    下面的內(nèi)容主要分為兩部分,第一部分「使用指南」是講如何使用這個(gè)工具的,第二部分「開發(fā)者指南」是講這個(gè)工具的開發(fā)思路和代碼邏輯,如果對代碼不感興趣直接略過第二部分就好。工具的使用和開發(fā)都是基于Win10系統(tǒng)的。

    使用指南

    1.獲取相關(guān)文件

    在公眾號(hào)后臺(tái)的對話框發(fā)送文字「」獲取百度網(wǎng)盤鏈接及提取碼,通過鏈接下載相關(guān)壓縮包

    2.解壓文件

    將壓縮包解壓獲得文件夾,將該文件夾放到?jīng)]有中文的路徑下,里面的文件如下:

    win桌面文件夾的路徑_win 10上面的win是哪個(gè)_win10截圖保存路徑

    如果壓縮包中的谷歌瀏覽器、和與你的系統(tǒng)不兼容,可以到下面的網(wǎng)址去下載適合的版本,將下載的包放在與exe文件相同的文件夾。其中谷歌瀏覽器、的版本要一致。

    · 谷歌瀏覽器下載地址:

    · 下載地址:

    · 下載地址:

    3.安裝谷歌瀏覽器和

    · 點(diǎn)擊p64.exe,在彈出的窗口點(diǎn)擊“是”,等待安裝完成即可。

    ·點(diǎn)擊-0.12.5-1.-win64.exe,在彈出的窗口點(diǎn)擊“是”,進(jìn)入到下一步后點(diǎn)擊“I Agree”,然后點(diǎn)擊將其安裝在默認(rèn)文件夾C:\ Files\,等待安裝完成即可。

    4.填入公眾號(hào)文章鏈接

    在urls4.txt填寫你需要保存的公眾號(hào)文章的鏈接,注意一行只能寫一條鏈接,注意不要有空格及其他特殊字符(urls4.txt中默認(rèn)鏈接有兩條微信文章的鏈接,第一次使用時(shí)可以先試下效果)

    win桌面文件夾的路徑_win 10上面的win是哪個(gè)_win10截圖保存路徑

    5.運(yùn)行工具

    按照實(shí)際需要點(diǎn)擊exe文件,其中三個(gè)exe的功能略有差別,請酌情選擇,差別如下:

    ·.exe 僅對文章進(jìn)行截圖

    · L.exe 對文章截圖并保存為HTML(因?yàn)楸4鏋镻DF耗時(shí)會(huì)比較長,所以通常我會(huì)選擇這種,既可以保留文章的格式又可以節(jié)約時(shí)間)

    · L_PDF.exe 對公眾號(hào)文章截圖、保存為HTML以及PDF

    注意要在文件夾中運(yùn)行exe文件。

    6.完成標(biāo)志

    命令提示符框顯示"本次保存所有文章的總耗時(shí)為xx秒字樣"時(shí),表示已經(jīng)完成本次操作

    開發(fā)指南

    1.開發(fā)環(huán)境部署

    使用的編程語言版本、瀏覽器版本、版本以及版本

    win 10上面的win是哪個(gè)_win桌面文件夾的路徑_win10截圖保存路徑

    · 3.6.8

    ·谷歌瀏覽器 79.0.3945.88版

    · 79.0.3945.88版

    · -0.12.5-1.-win64

    安裝的教程網(wǎng)上有很多這里就不贅述了,不需要安裝,谷歌瀏覽器和的安裝包及安裝步驟在上面「使用指南」已經(jīng)提及。

    2.使用到的模塊

    ,os,,time,,re,,,.

    其中os,time及re為標(biāo)準(zhǔn)庫無需另外安裝,

    ,,,,以及可以用pip命令安裝。

    比如安裝,在cmd窗口輸入pip 然后點(diǎn)擊回車等待安裝完成即可。

    下面講講開發(fā)的思路和比較關(guān)鍵的代碼。

    win10截圖保存路徑_win 10上面的win是哪個(gè)_win桌面文件夾的路徑

    3. 思路

    使用和模擬瀏覽器來訪問微信文章并進(jìn)行全屏截圖。

    使用win10截圖保存路徑,用它的find方法和tag屬性修改刪除來解決微信文章圖片懶加載(即當(dāng)查看到文章某部分時(shí)圖片才加載)的問題,用find方法提取文章的作者和標(biāo)題,同時(shí)將提取的HTML保存為HTML文件。

    使用調(diào)用將保存的HTML轉(zhuǎn)換為PDF文件。

    4.關(guān)鍵代碼

    ·引入和,先設(shè)置好相關(guān)配置,將設(shè)置為無界面模式同時(shí)屏蔽掉運(yùn)行日志。在開發(fā)過程中如果不屏蔽掉運(yùn)行日志,那么將會(huì)有很多冗余的信息干擾你的視線。

    from?selenium?import?webdriver
    from?selenium.webdriver.chrome.options?import?Options
    os.environ['webdriver.chrome.driver']?=?chromedriver
    #?設(shè)置chrome開啟的模式,headless就是無界面模式,只有開啟這個(gè)模式才能截取全屏
    chrome_options?=?Options()
    chrome_options.add_argument('headless')
    #?屏蔽chromedriver運(yùn)行日志
    chrome_options.add_experimental_option('excludeSwitches',?['enable-logging'])
    driver?=?webdriver.Chrome(chromedriver,?chrome_options=chrome_options)

    · 因?yàn)槲⑿盼恼率褂玫氖菓屑虞d圖片的方式,所以如果直接使用方法只能截取到文字內(nèi)容而無法截取文章里的圖片,所以要用的來執(zhí)行JS腳本,模擬拖動(dòng)滾動(dòng)條到頁面的最底部。

    all_window_height?=?[]
    #?當(dāng)前頁面的最大高度加入列表
    all_window_height.append(driver.execute_script('return?document.body.scrollHeight;'))?
    while?True:
    ????#?執(zhí)行拖動(dòng)滾動(dòng)條操作
    ????driver.execute_script('scroll(0,100000)')
    ????time.sleep(3)
    ????check_height?=?driver.execute_script('return?document.body.scrollHeight;')
    ????#?判斷拖動(dòng)滾動(dòng)條后的最大高度與上一次的最大高度的大小,相等表明到了最底部
    ????if?check_height?==?all_window_height[-1]:
    ????????break
    ????else:
    ????????#?如果不相等,將當(dāng)前頁面最大高度加入列
    ????????all_window_height.append(check_height)

    本段代碼參考自

    · 用的來執(zhí)行JS腳本,從而獲得整個(gè)網(wǎng)頁的高度和寬度,然后使用對整篇文章進(jìn)行截圖

    width?=?driver.execute_script('return?document.documentElement.scrollWidth')
    height?=?driver.execute_script('return?document.documentElement.scrollHeight')
    #?將瀏覽器的寬高設(shè)置成剛剛獲取的寬高
    driver.set_window_size(width,?height)
    driver.save_screenshot(pic_path)

    win桌面文件夾的路徑_win10截圖保存路徑_win 10上面的win是哪個(gè)

    · 和上面截圖時(shí)遇到的圖片懶加載一樣,如果用直接將微信文章保存為HTML的話win10截圖保存路徑,保存的文件中是看不到圖片的,只能看到一個(gè)個(gè)。請教前端同事后,發(fā)現(xiàn)只要先將微信文章HTML中的屬性data-src改為src,然后再保存為HTML文件就不會(huì)有這個(gè)問題了。

    soup?=?BeautifulSoup(response.content,?'html5lib')
    #?將擁有'data-src'屬性的圖片標(biāo)簽的'data-src'改為'src',解決JS懶加載的問題
    for?img?in?soup.find_all('img',?{'data-src':?True}):
    ????img['src']?=?img['data-src']
    ????del?img['data-src']

    · 通過調(diào)用模塊

    pdfkit.from_file(html_path,?pdf_path,?options=options,?configuration=config)

    · 完成代碼開發(fā)后,使用 -F L_PDF.py將代碼和使用到的模塊打包成exe,這樣在沒有環(huán)境的電腦也可以使用這個(gè)工具了。

    完整代碼在上面的「使用指南」提及的下載包里面有,另外點(diǎn)擊本文左側(cè)最底部的閱讀原文也可以看到源碼。

    參考資料

    1.

    2. Soup 4.4.0 文檔

    3.函數(shù)解決頁面懶加載問題

    題圖:Photo by 官網(wǎng)和微信官網(wǎng)

    Note:

    1.因?yàn)樗接邢蓿覍懙倪@個(gè)小工具也只是能用而已,如果讀者朋友們發(fā)現(xiàn)功能或者代碼有不合理的地方,歡迎到公眾號(hào)后臺(tái)的對話框留言指正交流,不勝感激。

    2.一些網(wǎng)頁也可以用這個(gè)工具來保存,使用方法也是一樣的,讀者們可以試一試。

網(wǎng)站首頁   |    關(guān)于我們   |    公司新聞   |    產(chǎn)品方案   |    用戶案例   |    售后服務(wù)   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區(qū)    電話:010-     郵箱:@126.com

備案號(hào):冀ICP備2024067069號(hào)-3 北京科技有限公司版權(quán)所有