использование python и urllib2 как пройти аутентификацию на веб-странице перед чтением исходного кода - PullRequest
2 голосов
/ 23 декабря 2010

хорошо, поэтому у меня есть код, предназначенный для чтения с веб-страницы и анализа источника, чтобы найти сумму денег в моем аккаунте Google AdSense. чтение из части идет примерно так:

import urllib2
import re
s = urllib2.urlopenopen('https://www.google.com/adsense/report/overview?timePeriod=alltime').read()
results = re.findall('[$][1-9][1-9][1-9][.][1-9][1-9]',s)
print results

так что код работает нормально, за исключением того факта, что для доступа к моей учетной записи я должен войти в систему (дух), но моя проблема в том, что я понятия не имею, как использовать python для аутентификации на странице входа в систему, а затем перейти к страница учетной записи. все, что мне нужно знать, это как пройти аутентификацию, а затем перейти на страницу, которая отображает данные моей учетной записи, и, кстати, я использую python 2.7, большое спасибо !!!!!!

Ответы [ 4 ]

2 голосов
/ 10 марта 2011

Вы можете попробовать использовать mechanize , сторонний пакет, действующий как браузер.

Идея будет заключаться в том, чтобы заставить механизм заполнять формы аутентификации, которые вы обычно заполняете вручную в браузере.

1 голос
/ 23 декабря 2010

Боюсь, вам повезет, если вы попытаетесь найти простое решение для того, что вы пытаетесь сделать.

Прежде всего, нет метода open с urllib2. То, что вы можете попробовать, это urllib2.urlopen

Возможно, вы сначала захотите узнать больше об аутентификации с использованием urllib2. Эта ссылка предоставляет некоторую информацию.

В вашем конкретном случае аутентификации на основе Google AdSense вам нужно будет выяснить, какие URL и файлы cookie Google AdSense ожидает для аутентификации, прежде чем запускать метод аутентификации на основе дайджеста. Есть плакат , который пытался сделать то же самое, но без особой удачи.

Лучший способ получить данные программным способом от Google - использовать их APIS, и в этом случае Google Adsense API , в списке API отчетности , и вы можете использовать SOAPpy для самоанализа и получения того, что вы хотите.

0 голосов
/ 23 декабря 2010

Бьюсь об заклад, есть библиотека Python для входа в службы Google. Может быть, вы можете похитить это для ваших нужд?

0 голосов
/ 23 декабря 2010

Аутентификация веб-страницы зависит от веб-сайта и может выполняться различными способами, обычно вам необходимо добавить заголовки или файлы cookie в запрос.Как должны выглядеть эти заголовки, зависит снова от веб-приложения, и если вы используете http или https, а файлы cookie, как правило, возвращаются вам, когда вы переходите на страницу входа, что означает, что вам нужно сделать запрос на вход в систему.следите за этими файлами cookie и отслеживайте их.

Итак, прежде чем мы расскажем вам, как это сделать в Python, вы должны выяснить, как это сделать.Как работает аутентификация Google AdSense?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...