Pythonで漫画をつかみmobi形式の電子書籍を作る
9107 ワード
ある漫画を見たいですが、携帯電話で見ると画面が小さすぎて、パソコンで見ましょう.ちょうどKindleがあって、爬虫類を書いて漫画をはがし、mobi形式の電子書籍を作ってkindleに入れて読むことにしました.
一、爬虫プログラムの作成
Chromeブラウザでターゲットサイトを開き、F 12を押して「開発者ツール」を起動し、ターゲットサイトのコードを分析し、漫画が保存されている実際の住所を読む.現在、サイトの防護措置はよく行われており、「右ボタン」——「画像を別名保存」して漫画を保存することはほとんどありません.漫画ページの「次の章」ボタンに対応する要素を分析し、Python+selenium+Chromeブラウザの組み合わせを使用することで、爬虫類を自動化して漫画のすべての章を遍歴させ、漫画をダウンロードします.
二、フォルダの整理順序
漫画のダウンロードが終わったら、章順に漫画のフォルダを並べます.「フォルダ名順」が漫画の章順と同じであることを確認します.(ここではPythonでスクリプトの名前を変更したり、フォルダの一括ネーミングソフトで作成したりすることができます)、電子書籍の作成が便利です.
三、電子書籍を作る
ここではソフトウェアKindle Comic Converterを使用します(具体的な使い方は表示されます).https://bookfere.com/post/164.html)を作成します.Kindle Comic Converter生成MOBIファイルはKindleGenに依存しており、見つからない場合はインストール完了および実行時にプロンプトが表示されます.ここをクリックしてください(https://bookfere.com/tools#KindleGen)KindleGenをダウンロードして該当する場所に置く:Windowsシステムはkindlegenを置く.ExceはKCCインストールディレクトリに入れます.Mac OS Xではkindlegenプログラムをパス"/usr/local/bin"の下に置く必要があります.変換手順を続行します.
また、ネットで言う制作過程ははすべての画像を1つのフォルダに集中します. [Add directory]をクリックしてフォルダをリストに追加[注1]. Kindleデバイスの型番、出力フォーマット(オプションMOBI、EPUB、CBZ)を選択する. 「Horizontal mobi(クロススクリーンモード)」など、必要に応じてパラメータを追加します. 【Convert】をクリックして変換を開始します.生成された電子書籍ファイルは、追加されたフォルダと同じディレクトリにあります.
【後記】
私がテストした結果、最も便利な方法はすべての画像を1つのフォルダに集中しないことです.「三、電子書籍作成」の手順1では、「漫画名」フォルダを作成し、その下に「第1章」「第2章」などのフォルダを作成する.各章のフォルダには、順番に保存された漫画の画像が入っています.(具体的なソート要件は、本明細書の「二、フォルダの整理順序」を参照してください).「Add directory」をクリックして「漫画の名前」フォルダをリストに追加し、変換すると、変換された電子書籍にディレクトリとブックマーク効果があります!
著作権に注意してください!自分のプログラミング学習とテストだけで、作ったmobi電子書籍を伝播しないで、利益を得ないでください.原作とコンテンツプロバイダを尊重!
転載先:https://www.cnblogs.com/codex/p/9377487.html
一、爬虫プログラムの作成
Chromeブラウザでターゲットサイトを開き、F 12を押して「開発者ツール」を起動し、ターゲットサイトのコードを分析し、漫画が保存されている実際の住所を読む.現在、サイトの防護措置はよく行われており、「右ボタン」——「画像を別名保存」して漫画を保存することはほとんどありません.漫画ページの「次の章」ボタンに対応する要素を分析し、Python+selenium+Chromeブラウザの組み合わせを使用することで、爬虫類を自動化して漫画のすべての章を遍歴させ、漫画をダウンロードします.
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import time
import requests
import os
def mkdir(path):
'''
:param path:
:return:
'''
if not os.path.exists(path):
os.mkdir(path)
def SavePic(filename,url):
'''
:param filename:
:param url:
:return:
'''
content = requests.get(url).content
with open(filename,'wb') as f:
f.write(content)
def get_TOF(index_url):
url_list = []
chrome_options = Options()
chrome_options.add_argument('--headless')# Chrome “ ”,
browser = webdriver.Chrome(chrome_options=chrome_options)
browser.get(index_url)
browser.implicitly_wait(3)
title = browser.title.split(',')[0]#
mkdir(title)#
comics_lists = browser.find_elements_by_class_name('comic_Serial_list')#
for part in comics_lists:#
links = part.find_elements_by_tag_name('a')
for link in links:
url_list.append(link.get_attribute('href'))#
browser.quit()
Comics = {'name':title,'urls':url_list}
return Comics
def get_pic(Comics):
comic_list = Comics['urls']
basedir = Comics['name']
chrome_options = Options()
chrome_options.add_argument('--headless')
browser = webdriver.Chrome(chrome_options=chrome_options) for url in comic_list:
browser.get(url)
browser.implicitly_wait(3)
dirname = basedir+'/'+browser.title.split('-')[1]
mkdir(dirname)
#
pageNum = len(browser.find_elements_by_tag_name('option'))
#
nextpage = browser.find_element_by_xpath('//*[@id="AD_j1"]/div/a[4]')
for i in range(pageNum):
pic_url = browser.find_element_by_id('curPic').get_attribute('src')
filename = dirname+'/'+str(i)+'.png'
SavePic(filename,pic_url)
nextpage.click()
print(' \t{} '.format(browser.title))
browser.quit()
print(' !')
if __name__ == '__main__':
url = str(input(' :
'))
Comics = get_TOF(url)
#print(Comics)
get_pic(Comics)
二、フォルダの整理順序
漫画のダウンロードが終わったら、章順に漫画のフォルダを並べます.「フォルダ名順」が漫画の章順と同じであることを確認します.(ここではPythonでスクリプトの名前を変更したり、フォルダの一括ネーミングソフトで作成したりすることができます)、電子書籍の作成が便利です.
三、電子書籍を作る
ここではソフトウェアKindle Comic Converterを使用します(具体的な使い方は表示されます).https://bookfere.com/post/164.html)を作成します.Kindle Comic Converter生成MOBIファイルはKindleGenに依存しており、見つからない場合はインストール完了および実行時にプロンプトが表示されます.ここをクリックしてください(https://bookfere.com/tools#KindleGen)KindleGenをダウンロードして該当する場所に置く:Windowsシステムはkindlegenを置く.ExceはKCCインストールディレクトリに入れます.Mac OS Xではkindlegenプログラムをパス"/usr/local/bin"の下に置く必要があります.変換手順を続行します.
また、ネットで言う制作過程は
【後記】
私がテストした結果、最も便利な方法はすべての画像を1つのフォルダに集中しないことです.「三、電子書籍作成」の手順1では、「漫画名」フォルダを作成し、その下に「第1章」「第2章」などのフォルダを作成する.各章のフォルダには、順番に保存された漫画の画像が入っています.(具体的なソート要件は、本明細書の「二、フォルダの整理順序」を参照してください).「Add directory」をクリックして「漫画の名前」フォルダをリストに追加し、変換すると、変換された電子書籍にディレクトリとブックマーク効果があります!
著作権に注意してください!自分のプログラミング学習とテストだけで、作ったmobi電子書籍を伝播しないで、利益を得ないでください.原作とコンテンツプロバイダを尊重!
転載先:https://www.cnblogs.com/codex/p/9377487.html