Как я могу извлечь данные HTML с Python? - PullRequest
0 голосов
/ 28 мая 2018
    <td><img src="/images/cflags/png/id1.png" alt="Indonesia" title="Indonesia"></td>
                                <td></td>
                                <td>link.here/python.php
                                </td>
                                <td>Linux</td>
<td><img src="/images/cflags/png/id2.png" alt="Indonesia" title="Indonesia"></td>
                            <td></td>
                            <td>link2.here/python.php
                            </td>
                            <td>Linux</td>
<td><img src="/images/cflags/png/id3.png" alt="Indonesia" title="Indonesia"></td>
                            <td></td>
                            <td>link3.here/python.php
                            </td>
                            <td>Linux</td>

вот пример кода, и я хочу извлечь ссылку на него, используя python, может кто-нибудь помочь мне, пожалуйста?

1 Ответ

0 голосов
/ 28 мая 2018

Вы можете использовать BeautifulSoup.

Если все ваши ссылки заканчиваются на php, вы можете сделать что-то вроде этого:

>>> from bs4 import BeautifulSoup
>>> text = '''<td><img src="/images/cflags/png/id1.png" alt="Indonesia" title="Indonesia"></td>
...                                 <td></td>
...                                 <td>link.here/python.php
...                                 </td>
...                                 <td>Linux</td>
... <td><img src="/images/cflags/png/id2.png" alt="Indonesia" title="Indonesia"></td>
...                             <td></td>
...                             <td>link2.here/python.php
...                             </td>
...                             <td>Linux</td>
... <td><img src="/images/cflags/png/id3.png" alt="Indonesia" title="Indonesia"></td>
...                             <td></td>
...                             <td>link3.here/python.php
...                             </td>
...                             <td>Linux</td>'''
>>> soup = BeautifulSoup(text, 'html.parser')
>>> [url.text.strip() for url in soup.find_all('td') if url.text.strip().endswith('php')]
['link.here/python.php', 'link2.here/python.php', 'link3.here/python.php']
...