Я пытаюсь разобрать таблицу прокси по следующей ссылке
https://www.proxy -list.download / SOCKS5
Используя элемент inspect, я вижу, что в элементе 'tbody' есть элементы 'tr' и внутри них элементы 'td'.
Однако, когда я пытаюсь получить к ним доступ и извлекать прокси из каждой строки и столбца, создается впечатление, что их не существует.
Он просто возвращает пустой список.
Я попытался переключить синтаксический анализ lxml на html и получить доступ к tbody без его класса. Я просто не совсем уверен, почему я могу напечатать переменную 'soup' и получить этот вывод
<tbody class="table-hover" id="tabli">
</tbody>
но не получить вывод из строк и т. Д.
import requests
from bs4 import BeautifulSoup, NavigableString
from selenium import webdriver
#While Loop Control Variable to Make Sure We Get a Working Proxy
successful_access = False
#Pulls the HTML of Our Proxy Website
website_url = requests.get("https://www.proxy-list.download/SOCKS5")
#Makes a Soup Variable That Turns Raw HTML Into "Parse-able" Data
soup = BeautifulSoup(website_url.content,"lxml")
#Puts The Table Object Into The "table" Variable
table = soup.find('tbody', attrs={'class':'table-hover'})
rows = table.find_all('tr')
print(rows)
#Initializes an Empty List for All Proxies
proxy_list = []
#For Each Row in Our List of Rows, We Extract The IP Number and Port, Appending Them To Our List Of IPs
for row in rows:
cols = rows.find_all('td')
ip = cols[0]
port = cols[1]
fullip = ip + ":" + port
proxy_list.append(fullip)
Нет выхода для
print(rows)
строка, и, естественно, список "proxy_list" также пуст.
[]