5

ローカルのWindowsマシンで、毎日コミックストリップをダウンロードして自分宛にメールで送信するスクリプトを作成するにはどうすればよいですか?

http://comics.com/peanuts/など

更新:画像をファイルとしてダウンロードする方法を知っています。難しいのは、ローカルのWindowsマシンから電子メールを送信する方法です。

4

6 に答える 6

8

これは、どの程度正確になりたいかによって異なります。Earwicker が上で述べたように、wget を使用して、Web ページ全体をダウンロードすることはそれほど難しくありません。

コミックの実際の画像ファイルをダウンロードしたい場合は、武器庫にもう少し必要になります. Python では、それが私が最もよく知っていることなので、urllib を使用してページにアクセスし、正規表現を使用してページの正しい部分を識別する必要があると思います。したがって、ページの正確なレイアウトと画像の絶対 URL を知る必要があります。

たとえば、XKCD の場合、次のように動作します。

#!/usr/bin/env python

import re, urllib

root_url = 'http://xkcd.com/'
img_url  = r'http://imgs.xkcd.com/comics/'

dl_dir   = '/path/to/download/directory/'

# Open the page URL and identify comic image URL
page  = urllib.urlopen(root_url).read()
comic = re.match(r'%s[\w]+?\.(png|jpg)' % img_url, page)

# Generate the filename
fname = re.sub(img_url, '', comic)

# Download the image to the specified download directory
try:
    image = urllib.urlretrieve(comic, '%s%s' % (dl_dir, fname))
except ContentTooShortError:
    print 'Download interrupted.'
else:
    print 'Download successful.'

その後、快適に感じるようにメールで送信できます。

于 2009-05-26T10:36:14.917 に答える
3

グーグルをざっと見てみると、バッチファイルで、または選択したスクリプト言語を使用して一緒にラッシュできるはずの2つのコマンドラインプログラムがわかります。

http://www.gnu.org/software/wget/-ダウンロードを行うには

http://www.beyondlogic.org/solutions/cmdlinemail/cmdlinemail.htm-電子メールを送信する

コントロールパネルのWindowsタスクスケジューラを使用して、毎日実行することができます。

Pythonを使用している場合は、ダウンロード/電子メールの部分を実行するのに便利なライブラリがあるはずです。公式のPythonサイトを参照してください。

于 2009-05-26T08:43:31.693 に答える
2

RSS フィードで feedburner を構成し、電子メール アラートを購読しますか?

于 2009-05-26T10:56:17.480 に答える
1

メールで送信するのは簡単です。お気に入りの言語のライブラリを選び、ドキュメントを読んでください。通常のメールアカウントで送信するか、新しい無料のGMailアカウントを作成してください。

ただし、添付ファイルが実際に扱いにくい場合もあります。他に何もない場合は、最も好きなライブラリを使って十分に回転させ、発生した問題について別の具体的な質問を投稿してください。

于 2009-05-26T17:02:32.233 に答える
1

これがおそらく目標への最短距離です。

単純ではありません...画像を解析する方法を考え出す必要があります.ピーナッツの例は予測できないURIのように見えるため、画像自体を取得するのは見た目よりも難しい場合があります. あなたの最善の策は、リモート Web ページの HTML を読み取り、正規表現を記述して画像 URL を解析することです。その後、mail 関数は正常に動作し、mail() 関数のヘッダーを次のように設定して HTML メールを送信します。

$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html;";
$headers .= " charset=iso-8859-1\r\n";

メールに画像タグ付き。これにより、すべての漫画が次々に配置されたメールを受け取ることができます. メール ソフトウェアが HTTP リクエストを実行して画像をダウンロードするため、画像を直接添付する必要がありません。

于 2009-05-26T09:36:28.437 に答える
1

ファイルをダウンロードする方法をすでに知っている場合は、非常に簡単です。ダウンロードしたら、自分宛てにメールで送信する cronjob を作成します。

phpmailer のようなものを使用するのが最も簡単な方法です。

http://phpmailer.codeworxtech.com/index.php?pg=examplebメール

于 2009-05-27T04:50:41.473 に答える