0

私はマンガリーダーから画像をダウンロードするためのスクリプトに取り組んでいます。これは私が徹底的に学んだ最初の言語であり、現時点では本当に夢中になっているため、Python で実行しようとしています。問題は、作成したループからの出力が、期待どおりに機能しないことです。

soup = soup.findAll('option') # We select all the option tags
for l in soup: # And we start with a loop
    l = l.get_text()
    print l
    url = url + str(l)
    print url

私が期待していた出力は次のとおりです。

1
http://www.mangareader.net/witch-shop/1/1
2
http://www.mangareader.net/witch-shop/1/2
3
http://www.mangareader.net/witch-shop/1/3
4
http://www.mangareader.net/witch-shop/1/4
5
http://www.mangareader.net/witch-shop/1/5
[...]

そして、それが示すものは次のとおりです。

1
http://www.mangareader.net/witch-shop/1/1
2
http://www.mangareader.net/witch-shop/1/12
3
http://www.mangareader.net/witch-shop/1/123
4
http://www.mangareader.net/witch-shop/1/1234
5
http://www.mangareader.net/witch-shop/1/12345
[...]

そして、私はその理由を理解できません。

私はあなたの助けに感謝します。

4

3 に答える 3

3

さて、あなたが行う各反復で

url = url + str(l)

に数字を追加しurl、リセットされることはありません。

目的の出力を得るには、試してください

for l in soup:
    l = l.get_text()
    print l
    print url + str(l)

urlこのようにして、変数の内容を変更しません。

于 2012-06-07T20:04:05.320 に答える
2

これは、初期化せずに繰り返しごとに追加lしているためです。urlurl

やったほうがいい:

#....
url2 = url + str(l)
print url2
#....
于 2012-06-07T20:03:38.707 に答える
1

次のことをしているとき

 url = url + str(l)

実際には、文字列に 1 を追加するのではなく、文字列に追加しています。

于 2012-06-07T20:02:36.393 に答える