5 に答える
仕事をする迅速で汚いCygwin Bashスクリプト:
#!/bin/bash
for file in $(find $WWWROOT -iname \*.aspx); do
echo -en $file '\t'
cat $file | tr '\n' ' ' | sed -i 's/.*<title>\([^<]*\)<\/title>.*/\1/'
done
説明: これは、ルート ディレクトリ $WWWROOT の下にあるすべての .aspx ファイルを検索し、すべての改行をスペースに置き換えて、<title>
との間に改行がないように</title>
し、それらのタグの間のテキストを取得します。
Adam Rosenfield が提案したものと同様のスクリプトが必要だと思いますが、実際の URL が必要な場合は、wget
. いくつかの適切なオプションを使用すると、サイトのすべてのページのリストが出力されます (さらに、それらをダウンロードします。おそらく で抑制できます--spider
)。このwget
プログラムは、通常の Cygwin インストーラーから入手できます。
スクレイピーシェルの使用を検討する必要があります
チェックアウト
http://doc.scrapy.org/intro/tutorial.html
コンソールに次のようなものを入れます:
hxs.x('/html/head/title/text()').extract()
すべてのタイトルが必要な場合は、スパイダーを実行する必要があります...非常に簡単です。
Linuxへの移行も検討してください:P
上記のように wget を使用します。サイトにスパイダー トラップがないことを確認してください。
わかりました、私は Windows に精通していませんが、正しい方向に導くために: XSLT 変換を使用します。
そこに <xsl:value-of select="/head/title" /> を入力してタイトルを取得するか、可能であれば XPath '/head/title' を使用してタイトルを取得します。