簡體   English   中英

無論如何我可以獲得img標簽的position嗎? 在 python 中使用 beautifulsoup 找到 function

[英]Is there anyway I can get the position of img tag? In python using beautifulsoup find function

我想知道 td 標簽的.png 圖像文件的 position 位於什么位置。

例如,在這種情況下(第 5 行),我有什么辦法可以獲得圖像標簽的 position? 在 python 中使用 beautifulsoup 找到 function 還是 scrappy?

</tr>
            <tr id="table_1_row_3">
                <td style="">A List</td>
                                                    <td style=""></td>
                                                    <td style="">Itemnumber</td>
                                                    <td style="">price</td>
                                                    <td style=""></td>
                                                    <td style=""><img src='https://www.example.com/.png' /></td>
                                                    <td style=""></td>
                                                    <td style=""></td>
                                                    <td style=""></td>
                                                    <td style=""></td>
                                                    <td style=""></td>
                                                    <td style=""></td>
                                                    <td style=""></td>
                                                    <td style=""></td>
                                                    <td style="">min price<BR>a List<BR></td>
                                                    <td style=""></td>
                                                    <td style=""></td>
                                                    <td style=""></td>
                                                    <td style=""></td>
                                                    <td style=""></td>
                                                    <td style=""></td>
                                                    <td style=""></td>
                                                    <td style=""></td>
                                                    

您可以使用內置的 function enumerate()來完成任務:

from bs4 import BeautifulSoup


txt = '''
    <tr id="table_1_row_3">
        <td style="">A List</td>
        <td style=""></td>
        <td style="">Itemnumber</td>
        <td style="">price</td>
        <td style=""></td>
        <td style=""><img src='https://www.example.com/.png' /></td>
        <td style=""></td>
        <td style=""></td>
        <td style=""></td>
        <td style=""></td>
        <td style=""></td>
        <td style=""></td>
        <td style=""></td>
        <td style=""></td>
        <td style="">min price<BR>a List<BR></td>
        <td style=""></td>
        <td style=""></td>
        <td style=""></td>
        <td style=""></td>
        <td style=""></td>
        <td style=""></td>
        <td style=""></td>
        <td style=""></td>
    </tr>'''


soup = BeautifulSoup(txt, 'html.parser')

# find all positions of <img> inside <tr>:
idx = [i for i, td in enumerate(soup.select('tr > td')) if td.img]

# print indexes, where there is <img> inside <td>:
print(idx)

印刷:

[5]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM