2

ウィキペディアの俳優ページのリンクを解析して、出演した映画へのリンクを探しています。

リンクを検索し、リンク内の単語をチェックする基本的な方法がありますfilm。ただし、映画へのリンクの多くには、実際にはこの単語が含まれていません。

ただし、リンクが含まれている段落内では、映画という単語が表示されます。次に例を示します。

    <p>Dreyfuss's first film part was a small, uncredited role in 
<i><a href="/wiki/The_Graduate" title="The Graduate">The Graduate 

    // Paragraph goes on for a long time. 

以下は、すべてのリンクをチェックするメソッドのブロックです。

all_links = doca.search('//a[@href]')
    all_links.each do |link|
        link_info = link['href']
        if link_info.include?("(film)") && !(link_info.include?("Category:") || link_info.include?("php"))
            then out << link_info end
      end
    out.uniq.collect {|link| strip_out_name(link)}

<p>リンクの前でタグの後にある前のテキストをチェックする方法はありますか? ただし、film他のリンクをチェックしないように注意してください (また、リンクの前の検索を 50 文字に制限することもできます)。

助けや提案をありがとう。

ここをクリックしてください。これは私がテストしているメインページです

4

3 に答える 3

1

ウィキペディアの記事のフィルモグラフィーのセクションを解析してみませんか? 私が見た数人の俳優の間ではかなり標準的なようで、テレビシリーズであるかどうかが言及されているので、それらを簡単に除外できます.

<tr>
    <td>1966</td>
    <td><i><a href="/wiki/Gidget_(TV_series)" title="Gidget (TV series)">Gidget</a></i></td>
    <td>Durf the Drag</td>
    <td>TV series 1 episode</td>
</tr>
<tr>
    <td>1967</td>
    <td><i><a href="/wiki/Valley_of_the_Dolls_(film)" title="Valley of the Dolls (film)">Valley of the Dolls</a></i></td>
    <td>Assistant stage manager</td>
    <td>Uncredited</td>
</tr>

これに似たノードをコードから引き出し、すべての情報を保存して、必要なことを行うことができるようです。「TV」は異なるサブノードに複数回出現するため、最初のノードは無視できます。

お役に立てれば!

-ラリー

于 2013-11-06T16:12:00.967 に答える