سؤال

أرغب في كشط قائمة المناقشة لمجموعة Google الخاصة. إنها قائمة متعددة الصفحات وقد أضطر إلى هذا لاحقًا مرة أخرى ، لذا يبدو أن البرمجة النصية تبدو كما هي في الطريق.

نظرًا لأن هذه مجموعة خاصة ، فأنا بحاجة إلى تسجيل الدخول في حسابي في Google أولاً. لسوء الحظ ، لا يمكنني إدارة تسجيل الدخول باستخدام WGET أو Ruby Net :: http. من المثير للدهشة أن مجموعات جوجل لا يمكن الوصول إليها مع واجهة تسجيل الدخول العميل, ، لذلك جميع عينات التعليمات البرمجية عديمة الفائدة.

نصي روبي الخاص بي مضمن في نهاية المنشور. الاستجابة للاستعلام عن المصادقة هي 200-OK ولكن لا توجد ملفات تعريف الارتباط في رؤوس الاستجابة ويحتوي الجسم على رسالة "يتم إيقاف تشغيل وظيفة ملفات تعريف الارتباط الخاصة بالمتصفح. يرجى تشغيله."

حصلت على نفس الإخراج مع WGET. انظر نص Bash في نهاية هذه الرسالة.

لا أعرف كيف أتوصل إلى هذا. هل فاتني شيء؟ اي فكرة؟

شكرا لك مقدما.

يوحنا

هذا هو البرنامج النصي روبي:

# a ruby script
require 'net/https'

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


email='john@gmail.com'
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=john@gmail.com&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
هل كانت مفيدة؟

المحلول

هل حاولت مع ميكانيكي لروبي؟
يتم استخدام المكتبة الميكانيكية لأتمتة التفاعل مع موقع الويب ؛ يمكنك تسجيل الدخول إلى Google وتصفح مجموعة Google الخاصة الخاصة بك لتوفير ما تحتاجه.

هنا مثال حيث يتم استخدام ميكانيكي لتجريف Gmail.

نصائح أخرى

لقد فعلت ذلك سابقًا عن طريق تسجيل الدخول يدويًا باستخدام Firefox ثم استخدمت قدم الدجاج لأتمتة التصفح والخروج.

وجدت هذا الحل PHP ل كشط مجموعات جوجل الخاصة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top