0

href タグ内のテキストを取得しようとしています。基本的に、私はhttps://code.google.com/p/android/issues/listでアンドロイドのバグをスクラップしようとしています

<td class="vt col_4" width="100%" onclick="if (!cancelBubble) _goIssue(0)">
<a onclick="cancelBubble=true" href="../../android/issues/detail id=58866&amp;colspec=ID Type Status Owner Summary Stars">

compass not showing right direktion

</a>
</td>

これは私のコードです:

class MySpider(BaseSpider):
name = "craig"

start_urls = ["https://code.google.com/p/android/issues/list"]

def parse(self, response):
    hxs = HtmlXPathSelector(response)
    titles = hxs.select("//td[@class='vt col_4']")
    items = []
    for titles in titles:
        item = CraiglistSampleItem()
        item ["id"] = titles.select("a/text()").extract()
        item ["type"] = titles.select("a/@href").extract()
        items.append(item)
    return items

他の href でテストしたところ、問題なく動作しました。上記のバグの概要を示す href でこれが機能しない理由を知っている人はいますか? ありがとう!

4

1 に答える 1

1

反復変数は、反復している変数と同じ名前を持っていますが、これは良い考えではありません。また、1 行おきに選択する必要があります。

class MySpider(BaseSpider):
    name = "craig"
    start_urls = ["https://code.google.com/p/android/issues/list"]

    def parse(self, response):
        hxs = HtmlXPathSelector(response)
        table = hxs.select("//table[@id='resultstable']")

        for title in table.select("tr/td[@class='vt col_4'][2]"):
            item = CraiglistSampleItem()
            item["id"] = title.select("a/text()").extract()
            item["type"] = title.select("a/@href").extract()

            yield item
于 2013-08-12T00:47:23.857 に答える