Я делаю проект, который включает в себя очистку веб-страниц на Python. Я использую библиотеки BeautifulSoup и Selenium. В какой-то момент в моем сценарии я собираю все теги URL с текстом ссылок.
link_click = driver.find_elements_by_link_text(
'Fall/Winter 2017-2018 Course Schedule')
Затем я считаю, сколько ссылок на самом деле есть в списке, который я создал.
len(link_click)
Ниже приведена функция, которую мне нужно будет запустить позже.
def get_course_info():
url = driver.current_url
response = requests.get(url, headers = headers)
soup = BeautifulSoup(response.content, 'html.parser')
course = soup.find_all('p')
course_code = print(course[0].text[3:][:9])
course_cat = print(course[0].text[3:][:4])
course_name = print(course[0].text[22:])
course_desc = print(course[3].text)
results = soup.findAll("td", {"valign": "TOP","width" : "15%"})[1::2]
list_of_inner_text = [x.text for x in results]
final = list(set(list_of_inner_text))
instructors = ', '.join(final)
print(instructors)
Я использую этот блок кода для выполнения того, что мне нужно сделать со ссылками.
course_select = link_click[1].click();
get_course_info()
Мой вопрос заключается в том, что в настоящее время я передаю 1 из индекса link_click
в функцию. Я хотел бы пройтись по нему, чтобы все 33 ссылки могли быть переданы в функции course_select
и get_course_info
.