このHTMLを解析しようとしています。XpathとCSSセレクタでScrapyがTBODYを処理しない
<table id="ctl00_LeftColumnMiddle_Table1" border="0">
<tbody>
<tr>
<td>
<table border="0">
<tbody>
<tr>
<td >Contractor Name</td><td>UNITED RENTALS HIGHWAY TECHNOLOGIES INC</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td><table border="0">
<tbody>
<tr>
<td >Contractor Name</td><td>UNITED RENTALS NORTHWEST INC</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
それは#ctl00_LeftColumnMiddle_Table1
にいくつかのTRを持っていると私は、各レコード(実際にはTR)、その後、各レコードのプロセスの詳細を処理したい各tr
内部table
を持っています。
私はこれらのセレクタ/ Xpathを試しました。
Selector(response).xpath('//*[@id="ctl00_LeftColumnMiddle_Table1"]/tbody/tr')
と
Selector(response).css('#ctl00_LeftColumnMiddle_Table1 > tbody >tr')
しかし、これは結果を返しません。
しかし、私は
Selector(response).css('#ctl00_LeftColumnMiddle_Table1 tr')
を行う。しかし、この表現は、あまりにもContractor Name
とインナーtr
Sを選択した場合。
これはScrapyのバグですか?
もしそうなら、私が望むようにレコードを処理する他の方法はありますか?
tbodyは自動的に生成されるタグなので、セレクタでの使用は避けてください。 – Andersson