2010-04-02 2 views
10

Я хотел бы очистить список обсуждений частной группы google. Это многостраничный список, и мне может понадобиться это позже, так что скрипты звучат так, как нужно.Как очистить группу _private_ google?

Поскольку это частная группа, мне нужно сначала войти в мою учетную запись google. К сожалению, я не могу войти в систему, используя wget или ruby ​​Net :: HTTP. Удивительно, что группы google недоступны с Client Login interface, поэтому все примеры кода бесполезны.

Мой рубиновый скрипт встроен в конец сообщения. Ответ на запрос проверки подлинности - 200-OK, но в заголовках ответов нет файлов cookie, а в теле содержится сообщение «Функциональность вашего файла cookie отключена. Пожалуйста, включите его».

Я получил тот же результат с wget. См. Сценарий bash в конце этого сообщения.

Я не знаю, как это сделать. я что-то упускаю? Есть идеи?

Заранее спасибо.

Джон

Вот рубин сценарий:

# a ruby script 
require 'net/https' 

http = Net::HTTP.new('www.google.com', 443) 
http.use_ssl = true 
path = '/accounts/ServiceLoginAuth' 


email='[email protected]' 
password='topsecret' 

# form inputs from the login page 
data = "Email=#{email}&Passwd=#{password}&dsh=7379491738180116079&GALX=irvvmW0Z-zI" 
headers = { 'Content-Type' => 'application/x-www-form-urlencoded', 
'user-agent' => "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/533.2 (KHTML, like Gecko) Chrome/6.0"} 

# Post the request and print out the response to retrieve our authentication token 
resp, data = http.post(path, data, headers) 
puts resp 
resp.each {|h, v| puts h+'='+v} 

#warning: peer certificate won't be verified in this SSL session 

Вот Баш скрипт:

# A bash script for wget 
CMD="" 
CMD="$CMD --keep-session-cookies --save-cookies cookies.tmp" 
CMD="$CMD --no-check-certificate" 
CMD="$CMD --post-data='[email protected]&Passwd=topsecret&dsh=-8408553335275857936&GALX=irvvmW0Z-zI'" 
CMD="$CMD --user-agent='Mozilla'" 
CMD="$CMD https://www.google.com/accounts/ServiceLoginAuth" 
echo $CMD 
wget $CMD 
wget --load-cookies="cookies.tmp" http://groups.google.com/group/mygroup/topics?tsc=2 

ответ

6

Пытались ли вы с mechanize рубин?
Библиотека Mechanize используется для автоматизации взаимодействия с веб-сайтом; вы можете войти в Google и просмотреть свою личную группу google, сохраняя то, что вам нужно.

Here пример, где механизация используется для очистки gmail.

+0

Hi systempuntoout, Спасибо за ваш ответ. Я не знал Механизацию. Мне удалось войти и очистить некоторые страницы, так что это здорово. Позднее я поделюсь сценарием. Еще раз спасибо, John – John

+0

@John: сколько позже? :-) –

+0

спасибо, что ссылка! вы можете в основном просматривать веб-страницы с irb и механизировать объект! – grinch

1

Я сделал это ранее, выполнив вход вручную с помощью Firefox, а затем воспользовался Chickenfoot, чтобы автоматизировать просмотр и скребли.

+0

Chickenfoot выглядит очень полезным. Один приятный плагин в моей панели инструментов! Благодаря! – John

1

Нашли это PHP решение для scraping private Google Groups.

+0

Спасибо за ссылку Profjim. Однако моя проблема заключалась в том, чтобы обрабатывать вход в группы google. Скремблирование открытых групп в порядке. – John

Смежные вопросы