次のPythonの簡単なスクリプトは、書籍全体をダウンロードし、そこに詰まったゴミをすべて切り取ってコピーを困難にします。
urllib、re、sysのインポート p_key = re.compile( 'http:\ / \ / lib \ .aldebaran \ .ru \ / getpage \ / 1 \ /.*? "') p_span = re.compile( '<span class = h>(。*?)<\ / span>') p_s = re.compile( '\'; s \ + = \ '') p_p = re.compile( '(<p>。*?<\ / p>)') p_url_name = re.compile( '^(http:\ / \ / lib.aldebaran.ru \ / author \ /.*?__)') def getpage(url): 試してください: key = p_key.findall(urllib.urlopen(url).read())[0] [-33:-1] を除く: 何も返さない urllib.urlopen( "http://lib.aldebaran.ru/getpage/1/" +キー).read() page = urllib.urlopen( "http://lib.aldebaran.ru/getpage/2/" +キー).read() page = p_span.sub( ''、ページ) page = '' .join(p_p.findall(ページ)) page = p_s.sub( ''、ページ) 戻りページ url = sys.argv [1] url = p_url_name.findall(url)[0] i = 1 Trueの場合: page = getpage(url + str(i)+ '.html') i + = 1 if page!=なし: 印刷ページ その他: sys.exit(0)
このスクリプトは、ブックの任意のページへのリンクへのコマンドラインパラメーターを受け取り、そのテキストを標準出力に表示します。
使い方はとても簡単です。
python lit.py lib.aldebaran.ru/author/sadov_sergei/sadov_sergei_klinki_u_trona/sadov_sergei_klinki_u_trona__0.html > lit.html
PS倫理に関する質問は別としてください。 個人的には、お気に入りの本を著者に直接支払います。
UPD
そんなに賢いのは私だけではありません。 提案されたコメントで
eBookDownloader-フィックスブック 、aldebara、liteportalライブラリをサポートするアプリケーション全体(.NETが必要)
FireFox DirectX DirectX用の小さなプラグインと同様に