【问题标题】:How to scrape data from html using python and xml?如何使用 python 和 xml 从 html 中抓取数据?
【发布时间】:2017-07-31 00:28:17
【问题描述】:

我是 python (2.7) 的新手,我有以下 html 代码(存储在我的硬盘上的文本文件中),我想从中提取某些数据:

                        </div><div class="tab_content_card">
        <div class="card-header">
            <strong title="Art @ Home BV">Art @ Home BV</strong>
            <span class="tel" title="Telefoonnummer aanwezig en geen mailstop en geen indicator “afgesloten of onjuist”.">Telefoonnummer aanwezig</span><span class="marketable besluit" title="Hier vindt besluitvorming plaats en bedrijf heeft geen mailstop en is marketable">Marketable / Hier vindt besluitvorming plaats</span><span class="mailstop geen-mailstop" title="Bedrijf heeft geen mailstop en adresgegevens zijn bekend en geen buitenlands adres">Geen Mailstop</span>
		
        </div>
        <div class="card-content">
            
			
            <table>
                <tbody>
                    <tr>
                        <td colspan="4">
                            
                            <label class="downdrill-sbi" title="Groothandel in overige consumentenartikelen n.e.g.">Groothandel in overige consumentenartikelen n...</label>
                        </td>
                    </tr>
                    <tr>
                        <td width="20">&nbsp;</td>
                        <td width="245">&nbsp;</td>
                        <td width="50">&nbsp;</td>
                        <td width="80">&nbsp;</td>
                    </tr>
                    <tr>
                        <td colspan="2">Arkeneel 2 </td>
                        <td></td>
                        <td></td>
                    </tr>
                    <tr>
                        <td colspan="2">3905 NS&nbsp;&nbsp;
                            
                            <label class="downdrill-sbi" title="VEENENDAAL">VEENENDAAL</label>
                        </td>
                        <td></td>
                        <td></td>
                    </tr>
                    <tr>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                    </tr>
                    <tr><td>T.</td><td>0318-514063</td><td>VAT nr.</td><td>30069687</td></tr>
                    <tr><td>F.</td><td>0318-529434</td><td colspan="2"></td></tr>
                    <tr>
                        <td colspan="2"> <a href="http://" target="_blank"></a> </td>
                        <td>Businesskey</td>
                        <td>S1585464</td>
                    </tr>
                </tbody>
            </table>
        </div>
        <div class="card-footer">
            <span class="card-checked">
                <input type="checkbox" id="bedrijf_geselecteerd-2-S1585464" value="S1585464">
                <label for="bedrijf_geselecteerd-2-S1585464">Geselecteerd</label>
            </span>

            <label class="mailstop-card-text">Dit bedrijf heeft een mailstop</label>

            <a class="card-plaatsinwinkelwagen" rel="S1585464" href="#">Plaats in winkelwagen</a>
            <span>|</span>
            <span>
                <a class="card-meerinfo" rel="S1585464" href="#">Meer info</a>
            </span>
        </div>

    </div><div class="tab_content_card">
        <div class="card-header">
            <strong title="Art Collection International BV">Art Collection International BV</strong>
            <span class="tel" title="Telefoonnummer aanwezig en geen mailstop en geen indicator “afgesloten of onjuist”.">Telefoonnummer aanwezig</span><span class="marketable besluit" title="Hier vindt besluitvorming plaats en bedrijf heeft geen mailstop en is marketable">Marketable / Hier vindt besluitvorming plaats</span><span class="mailstop geen-mailstop" title="Bedrijf heeft geen mailstop en adresgegevens zijn bekend en geen buitenlands adres">Geen Mailstop</span>
		
        </div>
        <div class="card-content">
            
			
            <table>
                <tbody>
                    <tr>
                        <td colspan="4">
                            
                            <label class="downdrill-sbi" title="Groothandel in overige consumentenartikelen n.e.g.">Groothandel in overige consumentenartikelen n...</label>
                        </td>
                    </tr>
                    <tr>
                        <td width="20">&nbsp;</td>
                        <td width="245">&nbsp;</td>
                        <td width="50">&nbsp;</td>
                        <td width="80">&nbsp;</td>
                    </tr>
                    <tr>
                        <td colspan="2">Hollandse Kade 32 </td>
                        <td></td>
                        <td></td>
                    </tr>
                    <tr>
                        <td colspan="2">1391 JM&nbsp;&nbsp;
                            
                            <label class="downdrill-sbi" title="ABCOUDE">ABCOUDE</label>
                        </td>
                        <td></td>
                        <td></td>
                    </tr>
                    <tr>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                    </tr>
                    <tr><td>T.</td><td>0294-286666</td><td>VAT nr.</td><td>30196193</td></tr>
                    <tr><td>F.</td><td>0294-286600</td><td>BKL nr.</td><td>45213546904B01</td></tr>
                    <tr>
                        <td colspan="2"> <a href="http://www.artcollectioninternational.nl" target="_blank">www.artcollectioninternational.nl</a> </td>
                        <td>Businesskey</td>
                        <td>S3046655</td>
                    </tr>
                </tbody>
            </table>
        </div>
        <div class="card-footer">
            <span class="card-checked">
                <input type="checkbox" id="bedrijf_geselecteerd-2-S3046655" value="S3046655">
                <label for="bedrijf_geselecteerd-2-S3046655">Geselecteerd</label>
            </span>

            <label class="mailstop-card-text">Dit bedrijf heeft een mailstop</label>

            <a class="card-plaatsinwinkelwagen" rel="S3046655" href="#">Plaats in winkelwagen</a>
            <span>|</span>
            <span>
                <a class="card-meerinfo" rel="S3046655" href="#">Meer info</a>
            </span>
        </div>

    </div><div class="tab_content_card">
        <div class="card-header">
            <strong title="Art Fashion BV">Art Fashion BV</strong>
            <span class="tel" title="Telefoonnummer aanwezig en geen mailstop en geen indicator “afgesloten of onjuist”.">Telefoonnummer aanwezig</span><span class="marketable besluit" title="Hier vindt besluitvorming plaats en bedrijf heeft geen mailstop en is marketable">Marketable / Hier vindt besluitvorming plaats</span><span class="mailstop geen-mailstop" title="Bedrijf heeft geen mailstop en adresgegevens zijn bekend en geen buitenlands adres">Geen Mailstop</span>
		
        </div>
        <div class="card-content">
            
			
            <table>
                <tbody>
                    <tr>
                        <td colspan="4">
                            
                            <label class="downdrill-sbi" title="Groothandel in overige consumentenartikelen n.e.g.">Groothandel in overige consumentenartikelen n...</label>
                        </td>
                    </tr>
                    <tr>
                        <td width="20">&nbsp;</td>
                        <td width="245">&nbsp;</td>
                        <td width="50">&nbsp;</td>
                        <td width="80">&nbsp;</td>
                    </tr>
                    <tr>
                        <td colspan="2">Prattenburg 35 </td>
                        <td></td>
                        <td></td>
                    </tr>
                    <tr>
                        <td colspan="2">3452 NN&nbsp;&nbsp;
                            
                            <label class="downdrill-sbi" title="VLEUTEN">VLEUTEN</label>
                        </td>
                        <td></td>
                        <td></td>
                    </tr>
                    <tr>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                    </tr>
                    <tr><td>T.</td><td>0345-588020</td><td>VAT nr.</td><td>11058753</td></tr>
                    <tr><td>F.</td><td>0183-564113</td><td>BKL nr.</td><td>45213249429B01</td></tr>
                    <tr>
                        <td colspan="2"> <a href="http://" target="_blank"></a> </td>
                        <td>Businesskey</td>
                        <td>S2482421</td>
                    </tr>
                </tbody>
            </table>
        </div>
        <div class="card-footer">
            <span class="card-checked">
                <input type="checkbox" id="bedrijf_geselecteerd-2-S2482421" value="S2482421">
                <label for="bedrijf_geselecteerd-2-S2482421">Geselecteerd</label>
            </span>

            <label class="mailstop-card-text">Dit bedrijf heeft een mailstop</label>

            <a class="card-plaatsinwinkelwagen" rel="S2482421" href="#">Plaats in winkelwagen</a>
            <span>|</span>
            <span>
                <a class="card-meerinfo" rel="S2482421" href="#">Meer info</a>
            </span>
        </div>

    </div><div class="tab_content_card">
        <div class="card-header">
            <strong title="Arthe Civil &amp; Structure BV">Arthe Civil &amp; Structure BV</strong>
            <span class="tel" title="Telefoonnummer aanwezig en geen mailstop en geen indicator “afgesloten of onjuist”.">Telefoonnummer aanwezig</span><span class="marketable besluit" title="Hier vindt besluitvorming plaats en bedrijf heeft geen mailstop en is marketable">Marketable / Hier vindt besluitvorming plaats</span><span class="mailstop geen-mailstop" title="Bedrijf heeft geen mailstop en adresgegevens zijn bekend en geen buitenlands adres">Geen Mailstop</span>
		
        </div>
        <div class="card-content">
            
			
            <table>
                <tbody>
                    <tr>
                        <td colspan="4">
                            
                            <label class="downdrill-sbi" title="Technisch ontwerp en advies voor grond-, water- en wegenbouw">Technisch ontwerp en advies voor grond-, wate...</label>
                        </td>
                    </tr>
                    <tr>
                        <td width="20">&nbsp;</td>
                        <td width="245">&nbsp;</td>
                        <td width="50">&nbsp;</td>
                        <td width="80">&nbsp;</td>
                    </tr>
                    <tr>
                        <td colspan="2">Kokermolen 7 </td>
                        <td></td>
                        <td></td>
                    </tr>
                    <tr>
                        <td colspan="2">3994 DG&nbsp;&nbsp;
                            
                            <label class="downdrill-sbi" title="HOUTEN">HOUTEN</label>
                        </td>
                        <td></td>
                        <td></td>
                    </tr>
                    <tr>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                    </tr>
                    <tr><td>T.</td><td>030-6384554</td><td>VAT nr.</td><td>30236509</td></tr>
                    <tr><td colspan="2"></td><td>BKL nr.</td><td>45219013602B01</td></tr>
                    <tr>
                        <td colspan="2"> <a href="http://www.arthecs.nl" target="_blank">www.arthecs.nl</a> </td>
                        <td>Businesskey</td>
                        <td>S4354827</td>
                    </tr>
                </tbody>
            </table>
        </div>
        <div class="card-footer">
            <span class="card-checked">
                <input type="checkbox" id="bedrijf_geselecteerd-2-S4354827" value="S4354827">
                <label for="bedrijf_geselecteerd-2-S4354827">Geselecteerd</label>
            </span>

            <label class="mailstop-card-text">Dit bedrijf heeft een mailstop</label>

            <a class="card-plaatsinwinkelwagen" rel="S4354827" href="#">Plaats in winkelwagen</a>
            <span>|</span>
            <span>
                <a class="card-meerinfo" rel="S4354827" href="#">Meer info</a>
            </span>
        </div>

    </div><div class="tab_content_card">
        <div class="card-header">
            <strong title="Arthemis KDV BV">Arthemis KDV BV</strong>
            <span class="tel" title="Telefoonnummer aanwezig en geen mailstop en geen indicator “afgesloten of onjuist”.">Telefoonnummer aanwezig</span><span class="marketable besluit" title="Hier vindt besluitvorming plaats en bedrijf heeft geen mailstop en is marketable">Marketable / Hier vindt besluitvorming plaats</span><span class="mailstop geen-mailstop" title="Bedrijf heeft geen mailstop en adresgegevens zijn bekend en geen buitenlands adres">Geen Mailstop</span>
		
        </div>
        <div class="card-content">
            
			
            <table>
                <tbody>
                    <tr>
                        <td colspan="4">
                            
                            <label class="downdrill-sbi" title="Kinderopvang">Kinderopvang</label>
                        </td>
                    </tr>
                    <tr>
                        <td width="20">&nbsp;</td>
                        <td width="245">&nbsp;</td>
                        <td width="50">&nbsp;</td>
                        <td width="80">&nbsp;</td>
                    </tr>
                    <tr>
                        <td colspan="2">Springweg 102 /E</td>
                        <td></td>
                        <td></td>
                    </tr>
                    <tr>
                        <td colspan="2">3511 VV&nbsp;&nbsp;
                            
                            <label class="downdrill-sbi" title="UTRECHT">UTRECHT</label>
                        </td>
                        <td></td>
                        <td></td>
                    </tr>
                    <tr>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                    </tr>
                    <tr><td>T.</td><td>06-51520630</td><td>VAT nr.</td><td>50087932</td></tr>
                    <tr><td colspan="2"></td><td>BKL nr.</td><td>45222551135B01</td></tr>
                    <tr>
                        <td colspan="2"> <a href="http://" target="_blank"></a> </td>
                        <td>Businesskey</td>
                        <td>S4957725</td>
                    </tr>
                </tbody>
            </table>
        </div>
        <div class="card-footer">
            <span class="card-checked">
                <input type="checkbox" id="bedrijf_geselecteerd-2-S4957725" value="S4957725">
                <label for="bedrijf_geselecteerd-2-S4957725">Geselecteerd</label>
            </span>

            <label class="mailstop-card-text">Dit bedrijf heeft een mailstop</label>

            <a class="card-plaatsinwinkelwagen" rel="S4957725" href="#">Plaats in winkelwagen</a>
            <span>|</span>
            <span>
                <a class="card-meerinfo" rel="S4957725" href="#">Meer info</a>
            </span>
        </div>

    </div><div class="tab_content_card">
        <div class="card-header">
            <strong title="Arthur &amp; Willemijn Stores BV">Arthur &amp; Willemijn Stores BV</strong>
            <span class="tel" title="Telefoonnummer aanwezig en geen mailstop en geen indicator “afgesloten of onjuist”.">Telefoonnummer aanwezig</span><span class="marketable besluit" title="Hier vindt besluitvorming plaats en bedrijf heeft geen mailstop en is marketable">Marketable / Hier vindt besluitvorming plaats</span><span class="mailstop geen-mailstop" title="Bedrijf heeft geen mailstop en adresgegevens zijn bekend en geen buitenlands adres">Geen Mailstop</span>
		
        </div>
        <div class="card-content">
            
			
            <table>
                <tbody>
                    <tr>
                        <td colspan="4">
                            
                            <label class="downdrill-sbi" title="Winkels in bovenkleding en mode-artikelen (algemeen assortiment)">Winkels in bovenkleding en mode-artikelen (al...</label>
                        </td>
                    </tr>
                    <tr>
                        <td width="20">&nbsp;</td>
                        <td width="245">&nbsp;</td>
                        <td width="50">&nbsp;</td>
                        <td width="80">&nbsp;</td>
                    </tr>
                    <tr>
                        <td colspan="2">Steenhoffstraat 11 </td>
                        <td></td>
                        <td></td>
                    </tr>
                    <tr>
                        <td colspan="2">3764 BH&nbsp;&nbsp;
                            
                            <label class="downdrill-sbi" title="SOEST">SOEST</label>
                        </td>
                        <td></td>
                        <td></td>
                    </tr>
                    <tr>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                    </tr>
                    <tr><td>T.</td><td>033-4229111</td><td>VAT nr.</td><td>31022283</td></tr>
                    <tr><td>F.</td><td>033-4621539</td><td>BKL nr.</td><td>45207729541B01</td></tr>
                    <tr>
                        <td colspan="2"> <a href="http://www.arthurenwillemijnstores.nl" target="_blank">www.arthurenwillemijnstores.nl</a> </td>
                        <td>Businesskey</td>
                        <td>S3666945</td>
                    </tr>
                </tbody>
            </table>
        </div>
        <div class="card-footer">
            <span class="card-checked">
                <input type="checkbox" id="bedrijf_geselecteerd-2-S3666945" value="S3666945">
                <label for="bedrijf_geselecteerd-2-S3666945">Geselecteerd</label>
            </span>

            <label class="mailstop-card-text">Dit bedrijf heeft een mailstop</label>

            <a class="card-plaatsinwinkelwagen" rel="S3666945" href="#">Plaats in winkelwagen</a>
            <span>|</span>
            <span>
                <a class="card-meerinfo" rel="S3666945" href="#">Meer info</a>
            </span>
        </div>

    </div><div class="tab_content_card">
        <div class="card-header">
            <strong title="Artifoto Veenendaal VOF">Artifoto Veenendaal VOF</strong>
            <span class="tel" title="Telefoonnummer aanwezig en geen mailstop en geen indicator “afgesloten of onjuist”.">Telefoonnummer aanwezig</span><span class="marketable besluit" title="Hier vindt besluitvorming plaats en bedrijf heeft geen mailstop en is marketable">Marketable / Hier vindt besluitvorming plaats</span><span class="mailstop geen-mailstop" title="Bedrijf heeft geen mailstop en adresgegevens zijn bekend en geen buitenlands adres">Geen Mailstop</span>
		
        </div>
        <div class="card-content">
            
			
            <table>
                <tbody>
                    <tr>
                        <td colspan="4">
                            
                            <label class="downdrill-sbi" title="Winkels in fotografische artikelen">Winkels in fotografische artikelen</label>
                        </td>
                    </tr>
                    <tr>
                        <td width="20">&nbsp;</td>
                        <td width="245">&nbsp;</td>
                        <td width="50">&nbsp;</td>
                        <td width="80">&nbsp;</td>
                    </tr>
                    <tr>
                        <td colspan="2">Hoofdstraat 84 </td>
                        <td></td>
                        <td></td>
                    </tr>
                    <tr>
                        <td colspan="2">3901 AV&nbsp;&nbsp;
                            
                            <label class="downdrill-sbi" title="VEENENDAAL">VEENENDAAL</label>
                        </td>
                        <td></td>
                        <td></td>
                    </tr>
                    <tr>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                    </tr>
                    <tr><td>T.</td><td>0318-511607</td><td>VAT nr.</td><td>58133488</td></tr>
                    <tr><td colspan="2"></td><td colspan="2"></td></tr>
                    <tr>
                        <td colspan="2"> <a href="http://www.artifoto.nl" target="_blank">www.artifoto.nl</a> </td>
                        <td>Businesskey</td>
                        <td>S5786857</td>
                    </tr>
                </tbody>
            </table>
        </div>
        <div class="card-footer">
            <span class="card-checked">
                <input type="checkbox" id="bedrijf_geselecteerd-2-S5786857" value="S5786857">
                <label for="bedrijf_geselecteerd-2-S5786857">Geselecteerd</label>
            </span>

            <label class="mailstop-card-text">Dit bedrijf heeft een mailstop</label>

            <a class="card-plaatsinwinkelwagen" rel="S5786857" href="#">Plaats in winkelwagen</a>
            <span>|</span>
            <span>
                <a class="card-meerinfo" rel="S5786857" href="#">Meer info</a>
            </span>
        </div>

    </div><div class="tab_content_card">
        <div class="card-header">
            <strong title="Artitec BV">Artitec BV</strong>
            <span class="tel" title="Telefoonnummer aanwezig en geen mailstop en geen indicator “afgesloten of onjuist”.">Telefoonnummer aanwezig</span><span class="marketable besluit" title="Hier vindt besluitvorming plaats en bedrijf heeft geen mailstop en is marketable">Marketable / Hier vindt besluitvorming plaats</span><span class="mailstop geen-mailstop" title="Bedrijf heeft geen mailstop en adresgegevens zijn bekend en geen buitenlands adres">Geen Mailstop</span>
		
        </div>
        <div class="card-content">
            
			
            <table>
                <tbody>
                    <tr>
                        <td colspan="4">
                            
                            <label class="downdrill-sbi" title="Groothandel in ferrometalen en -halffabrikaten">Groothandel in ferrometalen en -halffabrikate...</label>
                        </td>
                    </tr>
                    <tr>
                        <td width="20">&nbsp;</td>
                        <td width="245">&nbsp;</td>
                        <td width="50">&nbsp;</td>
                        <td width="80">&nbsp;</td>
                    </tr>
                    <tr>
                        <td colspan="2">Fornheselaan 120 </td>
                        <td></td>
                        <td></td>
                    </tr>
                    <tr>
                        <td colspan="2">3734 GE&nbsp;&nbsp;
                            
                            <label class="downdrill-sbi" title="DEN DOLDER">DEN DOLDER</label>
                        </td>
                        <td></td>
                        <td></td>
                    </tr>
                    <tr>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                    </tr>
                    <tr><td>T.</td><td>030-8507060</td><td>VAT nr.</td><td>33217980</td></tr>
                    <tr><td>F.</td><td>030-8507061</td><td>BKL nr.</td><td>NL007793972B01</td></tr>
                    <tr>
                        <td colspan="2"> <a href="http://www.artitec.com" target="_blank">www.artitec.com</a> </td>
                        <td>Businesskey</td>
                        <td>S2185596</td>
                    </tr>
                </tbody>
            </table>
        </div>
        <div class="card-footer">
            <span class="card-checked">
                <input type="checkbox" id="bedrijf_geselecteerd-2-S2185596" value="S2185596">
                <label for="bedrijf_geselecteerd-2-S2185596">Geselecteerd</label>
            </span>

            <label class="mailstop-card-text">Dit bedrijf heeft een mailstop</label>

            <a class="card-plaatsinwinkelwagen" rel="S2185596" href="#">Plaats in winkelwagen</a>
            <span>|</span>
            <span>
                <a class="card-meerinfo" rel="S2185596" href="#">Meer info</a>
            </span>
        </div>                             

它在网页上的样子:

使用以下脚本,我试图提取两家公司的电话号码 (P.):

import xml.etree.ElementTree as ET

tree = ET.parse('html88.txt')
root = tree.getroot()

for variable in root.findall('tbody'):
    phone = variable.find('/html/body/div[1]/div[2]/table/tbody/tr[6]/td[2]').text
    print(phone)

结果:

Traceback (most recent call last):
  File "C:/Users/Jacob/PycharmProjects/untitled/yay4.py", line 3, in <module>
    tree = ET.parse('html88.txt')
  File "C:\Python27\lib\xml\etree\ElementTree.py", line 1182, in parse
    tree.parse(source, parser)
  File "C:\Python27\lib\xml\etree\ElementTree.py", line 656, in parse
    parser.feed(data)
  File "C:\Python27\lib\xml\etree\ElementTree.py", line 1653, in feed
    self._raiseerror(v)
  File "C:\Python27\lib\xml\etree\ElementTree.py", line 1517, in _raiseerror
    raise err
xml.etree.ElementTree.ParseError: not well-formed (invalid token): line 1, column 9

我做错了什么,我该如何解决这个问题?

【问题讨论】:

    标签: python html xml-parsing


    【解决方案1】:

    我会使用 Beautiful Soup (pip install beautifulsoup4)。它似乎正确处理数据。此外,与其依赖从不改变的顺序,看起来您可以枚举所有 td 标签,寻找一个等于“P”的标签。电话号码是之后的号码。这是代码。它适用于您包含的 HTML 代码。

    from bs4 import BeautifulSoup
    
    with open('html88.txt', 'r') as f:
        html_string = f.read()
    
    soup = BeautifulSoup(html_string, 'html.parser')
    td_list = soup.find_all('td')
    
    for index, variable in enumerate(td_list):
        # Look for phone numbers
        if variable.text == 'P.':
            # The next one should be a phone number, but make sure there are more tags to parse
            if index < len(td_list):
                # There are more tags, so the next one should be the phone number
                phone = td_list[index + 1].text
                print(phone)
    

    【讨论】:

    • 感谢您的回复!但是,您的建议没有打印任何内容:Process finished with exit code
    • 我在 Python 2.7.8 和 3.5 下使用您在问题中包含的 sn-p 进行了尝试。 .txt 文件是否包含比您发布的更多内容?输出:555-889 555-458 Process finished with exit code 0
    • 试试这个。在 td_list = soup.find_all('td') 之后,添加:print(len(td_list))
    • 添加 print(len(td_list)) 帮助谢谢。事实上,包含的 sn-p 只是实际 txt 文件的一小部分。 .txt 文件包含的内容比我发布的要多。所以脚本现在可以工作,但只能使用包含的 html 代码。如果我在大的 .txt 文件上尝试脚本,它只会打印一个变量。有什么建议吗?
    • 你能发布整个文件吗?如果它包含敏感数据,您可以通过将其更改为随机字母或数字来混淆它。但是,您也许可以在不发布它的情况下修复它。您需要使用 BeautifulSoup 找到代表您发布的 sn-p 的 div class="tab_content_card:",然后仅解析该对象。
    猜你喜欢
    • 1970-01-01
    • 2019-09-04
    • 2020-06-03
    • 2019-12-01
    • 2017-08-09
    • 2023-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多