hagnoherze, а с чего бы приведенному коду работать, собственно?
У тебя из while True: выхода не предусмотрено, так что начиная с def cancel(): код выполнен не будет.
Влад Хоренко, тебе сказали.
1. Читай, как пользоваться модулем argparse. Не умеешь по-английски - учи английский. Разработчик без знания английского - практически калека. тем более что беглая речь не требуется, достаточно умения читать со словарём. Это школьный уровень, на самом деле.
Но поскольку изучение языка - дело не очень быстрое, то либо используй машинный перевод, либо ищи документацию на русском. В любом случае, тебе направление поисков указали. Дальше сам.
2. По поводу ошибок. 1 - ты запускаешь скрипт без аргументов, а скрипт этого не ожидает. Решается либо проверкой длины sys.argv, либо использованием argparse, он это умеет.
2,3 - ты неправильно используешь метод update() у словаря. Он не предназначен для задания значения по ключу. Читай документацию.
Вадимка))), сам виноват. Я ответил на поставленный вопрос. Про множественные объекты на сцене там не то что ни слова - даже ни намёка нет.
Скорее всего одним алгоритмом дело не ограничится, придётся сначала искать примерное расположение объектов - например, преобразованием Хафа, или на основании знания о предыдущем его расположении.
А потом уже уточнять позицию и ориентацию либо по особым точкам, либо template matching'ом, либо ещё как-то.
Если я правильно понял алгоритм, он не поможет для поиска поворота. Придётся искать объект в самых разных ориентациях. Хотя и тут возможны оптимизации...
Максим, просто выбранная локаль будет определять формат дальнейшего вывода - до следующей смены локали.
Поэтому обычно не имеет смысла менять локаль программы на ходу - она чаще выбирается один раз в начале программы и потом используется. Исключение - если вам нужно делать вывод одновременно в нескольких локалях.
Вреда нет, просто неряшливо, ну и неоптимально.
Python Новичок, учи как placeholders использовать, они же prepared statements.
cursor.execute('SELECT * FROM table WHERE x = ? AND y = ?', (x_value, y_value))
EgorSvinarev, ну если придираться, то "часто" и "внезапно" - не одно и то же. =) Если сайт обновляется редко, но нерегулярно, а ты хочешь гарантированно иметь актуальную информацию (что важно при планировании поездок), то выполнять запрос немедленно практичнее до тех пор, пока этих запросов не очень много.
Это имеет смысл, если запросы идут чаще, чем хотя бы раз в пять минут.
Если бот "для себя", а информация в источнике может меняться внезапно, то подход "парсить по запросу" может иметь смысл.
Если нет, то нужны детали.
Что за библиотеку для работы с ВК планируешь использовать? Асинхронную или синхронную? От этого зависит организация бота - простой асинхронный, или синхронный с потоками. (Если термины незнакомы, тебе нужно подучиться, прежде чем браться за ботов.)
Сколько человек будут пользоваться ботом и насколько часто? Насколько часто меняется это расписание? От этого зависит оправданность парсинга по каждому запросу пользователя.
Что за сайт? Отдаёт ли он нужный контент статически, или генерирует/подгружает его через JavaScript? Если первое, то достаточно библиотеки для выполнения HTTP запросов. Для синхронного бота подойдёт requests, для асинхронного - aiohttp. Обе сторонние, ставятся через pip. Не забудь про имитацию запроса обычным пользователем - куки, заголовки Referer и User-Agent.
Используй beautifulsoup, чтобы выдернуть нужную инфу из HTML разметки, хотя в простых случаях и регулярные выражения подойдут.
Если сайт увешан скриптами, нужно анализировать сайт и выяснять, какой фоновый запрос отдаёт нужные данные. Если повезёт, и сайт отдаёт данные в json, то подойдёт одноименный стандартный модуль.
Если же не повезёт, и сайт слишком сложен, или сайт защищается от ботов, придётся использовать selenium для его открытия в обычном (но программно управляемом) браузере. Это куда более тяжеловесный процесс, но и куда более сложный для обнаружения.
И да, ты hello_words всё ещё не починил. Ты используешь синтаксис как у f-строки, но в списке у тебя обычные строки, а не f-строки. Если используешь commands, то префикс там вообще не нужен.
Python Новичок, ну простейшие вещи selenium за тебя сделает - куки примет, заголовки типа User-Agent правильные отправит. Но фз чего там гугл наворотил - таких ботов-спамеров на ютубе уже полно. Так что не следует ожидать, что всё прямо сходу заработает, и что учётку через месяц не забанят.
сергей кузьмин, я подозреваю, что InstallAllUsers=0.
Если питон ставится в профиль пользователя, то путь придётся определять по переменным окружения. Впрочем, это всё равно должно быть выполнимо.
У тебя из while True: выхода не предусмотрено, так что начиная с def cancel(): код выполнен не будет.