{"id":1202,"date":"2011-07-03T15:23:39","date_gmt":"2011-07-03T19:23:39","guid":{"rendered":"http:\/\/cd34.com\/blog\/?p=1202"},"modified":"2011-07-03T15:23:40","modified_gmt":"2011-07-03T19:23:40","slug":"google-python-and-mechanize","status":"publish","type":"post","link":"https:\/\/cd34.com\/blog\/programming\/python\/google-python-and-mechanize\/","title":{"rendered":"Google+, Python, and mechanize"},"content":{"rendered":"<p>Since Google+&#8217;s release, I&#8217;ve wanted access to an API. I&#8217;m told soon. I couldn&#8217;t wait.<\/p>\n<pre>\r\n#!\/usr\/bin\/env python\r\n\r\nimport mechanize\r\n\r\ncj = mechanize.LWPCookieJar()\r\ncj.load(\"cookies.txt\")\r\n\r\nbr = mechanize.Browser()\r\nbr.set_cookiejar(cj)\r\nbr.set_handle_redirect(True)\r\nbr.set_handle_referer(True)\r\nbr.set_handle_robots(False)\r\nbr.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1)\r\nbr.addheaders = [('User-agent', 'Mozilla\/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit\/535.1 (KHTML, like Gecko) Chrome\/14.0.810.0 Safari\/535.1 cd34\/0.9b')]\r\nbr.open('https:\/\/www.google.com\/accounts\/ServiceLogin?service=oz&passive=1209600&continue=https:\/\/plus.google.com\/up\/start\/')\r\n\r\nbr.select_form(nr=0)\r\n\r\nbr.form.find_control(\"Email\").readonly = False\r\nbr.form['Email'] = 'email@address.com'\r\nbr.form['Passwd'] = 'supersecretpasswordhere'\r\n\r\nbr.submit()\r\n\r\nfor l in br.links():\r\n    print l\r\n\r\ncj.save(\"cookies.txt\")\r\n<\/pre>\n<div style=\"float:left;\">\n<div id=\"fb-root\"><\/div>\n<fb:like href=\"https:\/\/cd34.com\/blog\/programming\/python\/google-python-and-mechanize\/\" width=\"250\" send=\"false\" show_faces=\"false\" layout=\"button_count\" action=\"recommend\"><\/fb:like>\n<\/div><div style=\"clear:both;\"><\/div>","protected":false},"excerpt":{"rendered":"<p>Since Google+&#8217;s release, I&#8217;ve wanted access to an API. I&#8217;m told soon. I couldn&#8217;t wait. #!\/usr\/bin\/env python import mechanize cj = mechanize.LWPCookieJar() cj.load(&#8220;cookies.txt&#8221;) br = mechanize.Browser() br.set_cookiejar(cj) br.set_handle_redirect(True) br.set_handle_referer(True) br.set_handle_robots(False) br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1) br.addheaders = [(&#8216;User-agent&#8217;, &#8216;Mozilla\/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit\/535.1 (KHTML, like Gecko) Chrome\/14.0.810.0 Safari\/535.1 cd34\/0.9b&#8217;)] br.open(&#8216;https:\/\/www.google.com\/accounts\/ServiceLogin?service=oz&#038;passive=1209600&#038;continue=https:\/\/plus.google.com\/up\/start\/&#8217;) br.select_form(nr=0) br.form.find_control(&#8220;Email&#8221;).readonly = False br.form[&#8216;Email&#8217;] [&hellip;]<\/p>\n<div style=\"float:left;\">\n<div id=\"fb-root\"><\/div>\n<fb:like href=\"https:\/\/cd34.com\/blog\/programming\/python\/google-python-and-mechanize\/\" width=\"250\" send=\"false\" show_faces=\"false\" layout=\"button_count\" action=\"recommend\"><\/fb:like>\n<\/div><div style=\"clear:both;\"><\/div>","protected":false},"author":15,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7],"tags":[154,185,299],"class_list":["post-1202","post","type-post","status-publish","format-standard","hentry","category-python","tag-google","tag-mechanize","tag-python"],"_links":{"self":[{"href":"https:\/\/cd34.com\/blog\/wp-json\/wp\/v2\/posts\/1202","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cd34.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cd34.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cd34.com\/blog\/wp-json\/wp\/v2\/users\/15"}],"replies":[{"embeddable":true,"href":"https:\/\/cd34.com\/blog\/wp-json\/wp\/v2\/comments?post=1202"}],"version-history":[{"count":1,"href":"https:\/\/cd34.com\/blog\/wp-json\/wp\/v2\/posts\/1202\/revisions"}],"predecessor-version":[{"id":1203,"href":"https:\/\/cd34.com\/blog\/wp-json\/wp\/v2\/posts\/1202\/revisions\/1203"}],"wp:attachment":[{"href":"https:\/\/cd34.com\/blog\/wp-json\/wp\/v2\/media?parent=1202"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cd34.com\/blog\/wp-json\/wp\/v2\/categories?post=1202"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cd34.com\/blog\/wp-json\/wp\/v2\/tags?post=1202"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}