Как использовать текущий URL-адрес объекта механизации для синтаксического анализа с использованием BeautifulSoup? - PullRequest
0 голосов
/ 08 февраля 2019

Я хочу использовать библиотеку механизации для входа на веб-сайт, а затем нажать пару кнопок, чтобы перейти к определенной веб-странице, которую я хочу проанализировать с помощью BeautifulSoup.

Я посмотрел пару ответов наПереполнение стека, и я могу использовать библиотеку механизации для входа в систему и нажимать кнопки, чтобы перейти к нужной странице, но затем я не могу разобрать эту ссылку с помощью BeautifulSoup.Это мой код:

import mechanize
from bs4 import BeautifulSoup
import requests

br = mechanize.Browser()
br.set_handle_robots(False)
br.open(login page link)  # Url that contains signin form
br.select_form(nr=0)
br['username'] = "username" 
br['password'] = 'password'
result = br.submit().read()
for link in br.links():
    if "link1" in link.url:  
        to_follow = link
        break

br.follow_link(to_follow)
for link in br.links():
     if 'link2' in link.url: 
        to_follow = link
        break

br.follow_link(to_follow)
str = str(br.geturl())
page = requests.get(str)
soup = BeautifulSoup(page.text, 'html.parser')
elements_list = soup.find(id_='content')
elements_list_items = elements_list.find_all('a')
for i in elements_list_items:
    print(i)

Я получаю следующий код ошибки

Traceback (последний вызов был последним): Файл "C: / Users / user / PycharmProjects / test1 /login.py ", строка 37, для i в elements_list_items: TypeError: объект 'NoneType' не повторяется

...