2017-07-09 3 views
0

すべての画像とHTML内のリンクがない単一のWebページを複製したいとします。私はwget -E -H -k -K -p {url}でこれを達成することができますが、これは完全な構造でWebページをプルダウンし、内容を表示するにはhtmlファイルに移動する必要があります。これにより、Webページを表示するhtmlファイルの場所が不一致になります。単一のWebページ(画像付き)をクローンしてindex.htmlに保存

私はこれもできますwget --no-check-certificate -O index.html -c -k {url}これはイメージへのリンクを保持し、適切にページを表示するためにウェブに出なければならないので、ウェブページを本当にローカルにしません。

1つのWebページを複製し、画像がローカルにリンクされた状態でindex.htmlを吐出させる方法はありますか?

PS:Webページに変更を加えるpythonスクリプトを使用してwgetを使用しているため、index.htmlが必要です。より良いものがあれば、私は他の方法に興味があります。

EDIT:

だから、私はよく自分自身を説明していないようだが、このプロジェクトのビットの背景情報は、私がすることになっている自動化されたフィッシングスクリプトに学校のためのコンセプトの証明に取り組んでいますですいくつかのアクションタグを変更してローカルWebサーバーに配置して、ユーザーがそのページにナビゲートしてページが正しく表示されるようにします。以前は-Oを使用していましたが、DNSスプーフィングを自分のプロジェクトに組み込んで以来、内部Webサーバーにルーティングされるようになり、Webページが壊れてしまうようになるため、Webページには外部からのリンクがありません。そのため、私は単一のWebページが正しく表示されるために必要な情報だけを持っている必要があります。また、予測可能なので、私が複製したディレクトリに移動すると、WebページからWebサイトが表示されます画像への適切なリンク、CSS等。)

+1

pythonスクリプトはどこですか? – Rahul

答えて

0

wgetのはbashコマンドでWebページの後に--recursiveを追加するダウンロードしたい場合。 Pythonでこのタスクを直接実行できるときには、Pythonを通して呼び出す必要はありません。基本的にあなたが作ろうとしているのはウェブスクレーパーです。これを実現するには、リクエストとBeautifulSoupモジュールを使用します。それらについて少し調べて、スクリプトを書くことを始めてください。エラーが発生した場合は、それに関する新しい質問を投稿してください。

+0

私がオンラインで見たことから、beautifulsoupは削り取るためのもので、必ずしも私がやっていることではありません。私はバックグラウンドで私の質問を更新しましたが、私は基本的にはローカルでWebページを複製していますが、-pを使うと予測できるようにしたいと思います。私は表示に必要なファイル(css、images、js)でWebページを複製したいが、index.htmlファイルに保存されているメインのhtmlも持っている。 – Jay

+0

BeautifulSoupを使用して、イメージのような一般的なタイプのタグを探し、そこから対応するURLを取得できます。 'requests.get()'を使ってhtmlファイルにダウンロードすることができます。たとえば、あなたのウェブページに画像があるとしましょう。リクエストをインポートします。import bs4 response = requests.get(url)sauce = response.content soup = bs4.BeautifulSoup(ソース、 'lxml')im_url = soup.find( 'イメージ')requests.get(im_url.link) 'IモバイルATで、私は私のラップトップにアクセスすると、これを再フォーマットします。 –

+0

ありがとう!これは素晴らしいスタートでした。私はこの質問を削除して、私がbeautifulsoupに持っているもののサンプルコードを投稿し、ページを完全に見るための提案を別の質問で尋ねます。これまで私はすべての画像とCSSを手に入れました。 – Jay

1

使用このwget facebook.com --domains website.org --no-parent --page-requisites --html-extension --convert-linksとあなたはすべてのWebサイト全体が

+0

このコマンドは、css、imagesのようなものをすべてスキップし、埋め込まれたものに従わないでしょう。 –

+0

よく試してみましたが、すべてがうまくいきます –

関連する問題