Это не ответ на ваши вопросы, так как нет объяснения проблемы, с которой вы сталкиваетесь. Тем не менее, я принял удар. Это не тестируется модулем, и если вы собираетесь использовать эту реализацию, используйте webdriver wait вместо time.sleep и выполните модульный тест
Я получил данные, но не проверял, все ли данные вошли в iframe
import time
from selenium.webdriver import Chrome
from selenium.common.exceptions import NoSuchElementException
import pandas as pd
driver = Chrome(executable_path=<path>)
driver.get('http://buyersguide.recyclingtoday.com/search')
results = []
while True:
time.sleep(2)
results_table = driver.find_element_by_css_selector('#Body_tbl>tbody')
rows = results_table.find_elements_by_tag_name('tr')
del rows[:2] # delete header
del rows[-2:] # delete footer
for row in rows:
data = row.find_elements_by_tag_name('td')
results.append([data[0].text, data[1].text, data[2].text, data[4].text])
time.sleep(2)
try:
next_ = driver.find_element_by_link_text('Next >')
next_.click()
except NoSuchElementException:
break
df = pd.DataFrame(results, columns=['Address', 'Company', 'Contact', 'Phone Number'])