1

別の配列に保存した画像へのリンクに対応する名前の配列を作成する必要があります。名前と画像へのリンクは同じテキスト ファイル内にあり、画像へのリンクはファイル内の対応する名前の後に続きます。次のコードを使用してテキスト ファイルを解析し、画像リンクの配列を作成します。

import re
images = []
with open('html_test.txt') as f:
    for line in f:
        images.extend(re.findall(r'"([^"]*\.(?:jpg|gif)[^"]*)"',line))

画像リンクごとに名前が 1 つしかない場合は、同様の方法を使用して名前のリストを作成できます。残念ながら、各名前に続く画像リンクの数は可変です。名前によっては 1 つの画像リンクのみが続くものもあれば、多数の画像リンクが続くものもあります。

私がする必要があると思うのは、各名前に続く画像へのリンクの数を数え、次に複数の画像が続く各名前の名前配列に重複するエントリを作成することです。(名前ごとの重複する名前エントリの数は、各名前に続く画像リンクの数から 1 を引いた数に等しくなります。)ただし、これを実行しようとすると、テキスト全体の名前の総数のカウントしか得られません。ファイル。名前の配列を作成して、それに続く画像ファイルへのリンクごとに各名前が1回配列に入力されるようにする方法を知っている人はいますか? (テキストファイルの次の名前に続くものを除く)

以下は、テキスト ファイルがどのように見えるかの例です。

<a href="/admin/user/view/41900" title="example_name_1" rel="41900">
<div class="thumb"><a href="#"><img src="https://jibbertyjob.com/asset/image/resize/2/32/32/1/5d4e6a0fjfe94980ny8en9uf98frnoad1876c00.jpg" width="32" height="32" alt="" /></a></div>
<a href="/admin/user/view/41900" title="example_name_2" rel="41900">
<div class="thumb"><a href="#"><img src="https://jibbertyjob.com/asset/image/resize/2/32/32/1/5d4e6a0fjfe9dfgsdfg9uf98frnoad1876l00.jpg" width="32" height="32" alt="" /></a></div>
<div class="thumb"><a href="#"><img src="https://jibbertyjob.com/asset/image/resize/2/32/32/1/5d4e6a0fjf4567w034098h9h5fg4gr33r3rggr376c09940.jpg" width="32" height="32" alt="" /></a></div>

半日悩んでいたのでよろしくお願いします!

4

0 に答える 0