Использование Python для механизации на сайтах, использующих DHTML, AJAX и т. Д.? - PullRequest
0 голосов
/ 26 октября 2011

Итак, допустим, я пытаюсь создать что-то, что отвечает на твиты определенного «ключевого слова хэштега» в твиттере (например, «#FirstWorldProblems»). У меня есть скрипт, который выглядит следующим образом:

# apply settings, create a mechanize.Browser, etc.

login() # log into twitter

# at this point we've logged into twitter, now, we will perform navigate to their search page and run a search query:
br.open('http://twitter.com/search?q=' + hashtag)
print(br.response().read()) # print the response

Итак, то, что я имею выше, это своего рода сокращенная версия, чтобы быстро добраться до места, доставляющего мне неприятности.

Я настроил браузер, авторизовался в твиттере, все сделано без проблем. Но затем я запускаю поиск хэштега (используя br.open) и затем печатаю ответ.

В Твиттере ссылка «Ответить» появляется только тогда, когда вы наводите указатель мыши на определенную ссылку и приводит к «#» (потому что открывается небольшая всплывающая подсказка, где вы можете ввести свой ответ), как бы я щелкнул на Ссылка "Ответить", потому что она не отображается в ответе?

1 Ответ

2 голосов
/ 26 октября 2011

Если ваша проблема на самом деле просто в доступе к Twitter, dmedvinsky, вероятно, прав.

Однако, если вы действительно хотите иметь возможность очищать сайты (позволяя их JavaScript работать так, как обычно ...), выВозможно, вам понадобится что-то более надежное.

Несмотря на то, что это много багажа, я настоятельно призываю вас взять Qt, PySide и ознакомиться с QWebKit.Вы можете управлять «настоящим» веб-браузером из Python и получать все преимущества (и проблемы;), которые можно ожидать.Но пока что это лучший и самый чистый метод, который я нашел, чтобы сделать то, о чем вы спрашиваете.

...