Я работаю над скриптом Python, который обращается к ряду веб-сайтов. Я не думаю, что написание целого класса для каждого веб-сайта является выполнимым вариантом, поэтому я ищу способ сократить код и использовать его как можно больше и писать его максимально эффективно. Хотя веб-сайт использует один и тот же или похожий механизм (например, Wordpress), они часто отличаются незначительными деталями, такими как имена файлов cookie, измененные пути URL (например, example.com/signin.php и example2.com/login.php), имена данных и значения для POST-запросы и т. Д.
В большинстве случаев я мог бы использовать переменные, но иногда мне нужно найти дополнительные данные из полученного URL в середине метода, чтобы продолжить, что означает добавление нескольких строк кода, которые необходимо обработать перед продолжением. Я обнаружил, что теоретически возможным решением для меня может быть использование суперклассов. Но я не смог найти никакой информации о том, как на самом деле «войти» в метод внесения изменений. Чтобы лучше проиллюстрировать мою точку зрения, взгляните на этот пример
class Wordpress(object):
def login(self):
# Do some stuff here
def newentry(self):
# Code to check if I'm logged in code
# and do bunch of other stuff
#
# Retrieve a page that *** sometimes contain important information
# in which case must be processed to continue! ***
data = {'name' : title,
'message' : message,
'icon' : iconid}
# Post new entry here
Как я уже прокомментировал в приведенном выше примере, в некоторых случаях мне нужно выполнить настройку непосредственно внутри самого метода, добавить фрагмент кода или изменить значение переменной или значение в словаре и т. Д. Как я могу этого добиться? , если это вообще возможно? Может быть, мое восприятие суперклассов далеко, и они на самом деле не такие, как я думаю.
Может быть, есть другой способ, о котором я не думал. Не стесняйтесь размещать свои собственные идеи, как бы вы решили эту проблему. Я с нетерпением жду ваших ответов. Спасибо.