scrapy 当两者上都有文本时,哪一个可能是获取文本的最佳Xpath< td>

2jcobegt  于 2022-11-09  发布在  其他
关注(0)|答案(1)|浏览(94)

我有下面的xml,我需要刮:

<div class="tab_product_details">
  <table>
    <tbody>
      <tr>...</tr> 
      <tr>...</tr> 
      <tr>...</tr>
      <tr>
        <td> text 1 </tr>
        <td> text 2 </tr>
      </tr>
      <tr>
        <td colspan = "2">
        <table>
          <tbody>
           <tr>
              <td> Adjustment</td> this text i do not need it!
              <td></td>
           </tr>           
           <tr class="feature">
              <td> text3</td> 
              <td> text4 </td>  
           </tr>

我的实际xpath如下:
text 1 =响应.xpath('//div[包含(@类,“标签产品详细信息”)]//td[跟随同级::td[不是(表)]]')
text 2 =响应.xpath('//div[包含(@类,“选项卡产品详细信息”)]//td[2]')
但我还是会收到没有配对的短信
任何帮助都非常欢迎,谢谢!

nzkunb0c

nzkunb0c1#

如果要获取文本 * 如果两个单元格(td)都不为空 * 请尝试

//div[@class = "tab_product_details"]//tr[count(./td[normalize-space()]) = 2]/td/text()[1]
//div[@class = "tab_product_details"]//tr[count(./td[normalize-space()]) = 2]/td/text()[2]

相关问题