Примечание. Этот проект больше не обновляется, поскольку я закончил школу, воспользуйтесь этим.
Sparx-Bookwork-Code — это проект, над которым я работаю около года (в основном в качестве хобби и потому, что мне лень).
Это веб-скребок для регистрации кодов Bookwork для Sparx и автоматического завершения проверок Bookwork (описано здесь). Он использует драйвер chrome (Google Chrome), а теперь и geckodriver (Firefox) для получения значений ответов и кодов. Я использую Python как мой основной язык, и его довольно легко понять.
Наличие его здесь может помочь любому, кто хочет в некоторой степени автоматизировать свою домашнюю работу по математике Sparx. (или просто ненавидит писать книжные коды)
В основном это посвящено Chrome (хотя у меня есть версия Firefox). Другие веб-браузеры требуют слишком много усилий, чтобы поддерживать их в актуальном состоянии, поэтому убедитесь, что у вас установлен Chrome. После установки Chrome вам необходимо выяснить, какая у него версия (Chromedriver очень требователен к версиям).
Сначала перейдите к трем точкам в правом верхнем углу. затем перейдите в «Настройки» > «О Chrome» (он находится внизу) и посмотрите версию.
Затем перейдите сюда и загрузите имеющуюся у вас версию.
Далее нажмите здесь. Это должно загрузить остальные файлы, которые вам нужны.
Ваша папка должна выглядеть примерно так. Теперь запустите .exe под названием «BWK-CHROME. Windows может выдать ошибку, просто нажмите «Подробнее». > Все равно запустите (если вы не считаете, что код безопасен, вы можете посмотреть его. здесь)
Введите детали, и все готово. Chrome должен открыться, и коды ваших книг должны быть зарегистрированы для вас.
Если вам нетрудно прочитать мой код. Вы могли заметить количество попыток: и есть исключения, это из-за Selenium Webdriver .
По какой-то причине Selenium выйдет из строя, если не сможет найти элемент. Это означает, что во избежание сбоя мне придется использовать исключения try, например:
try :
kp = driver . find_element_by_class_name ( 'number-input' )
if kp . get_attribute ( "value" ) != "" :
log ( "[BWK] " + BWK . text + " [ANSWER] " + kp . get_attribute ( "value" ))
except :
И... когда я проверяю несколько элементов, в результате получается множество исключений try.
В основном я использую Linux, но когда я разрабатывал это, я по-прежнему в основном использовал Windows, а в основном Chrome. При переходе на Linux я начал в основном использовать Firefox. Поэтому вместо установки двух браузеров я начал разработку версии Sparxbwk для Firefox . Подобно Chrome и Chromedriver, Firefox имеет драйвер geckodriver, отсюда и название gecko. Если вы собираетесь использовать этот инструмент, я предлагаю использовать Chrome, поскольку он, как правило, находится в лучшем состоянии, чем Gecko. Я склонен тестировать вещи и функции в версии Firefox, а не в Chrome, но оба должны работать.