{"id":143,"date":"2012-04-30T14:21:44","date_gmt":"2012-04-30T13:21:44","guid":{"rendered":"http:\/\/www.jbahillo.com\/?page_id=143"},"modified":"2012-06-11T09:29:00","modified_gmt":"2012-06-11T08:29:00","slug":"pythoncastleville-py","status":"publish","type":"page","link":"https:\/\/www.jbahillo.com\/?page_id=143","title":{"rendered":"[Python] Castleville.py"},"content":{"rendered":"<p>Este c\u00f3digo lo ide\u00e9 en un tiempo que jugaba al Castleville, uno de los muchos juegos que circulan por Facebook. La idea en este script es bastante b\u00e1sica: Existe una p\u00e1gina, http:\/\/www.trucoscastleville.com, en donde, adem\u00e1s de publicar recompensas diarias, la gente publica solicitudes de aquellos elementos que necesitan para el juego. Cualquiera persona que haga clic sobre ellas, adem\u00e1s de enviarle la recompensa a quien la solicito, la recibir\u00e1 el mismo, por lo cual pens\u00e9 en idear este script, que carga todas las url&#8217;s  de recompensas en el navegador.<br \/>\nConsejo si decid\u00eds utilizarlo: instalad un complemento en el navegador que cierre autom\u00e1ticamente las pesta\u00f1as tras un tiempo x inactivas, ya que si no aunque el codigo incluye un timer de 15 segundos entre apertura y apertura, os acabar\u00e9is encontrando con cientos de pesta\u00f1as, bloqueando el navegador y posiblemente tambi\u00e9n el sistema.<\/p>\n<pre class=\"brush: python; gutter: true; first-line: 1; highlight: []; html-script: false\">import urllib, sgmllib\nimport subprocess\nfrom sgmllib import SGMLParser\nimport webbrowser\nimport time\n\n\nclass URLLister(SGMLParser):\n\tdef reset(self):\n\t\tSGMLParser.reset(self)\n\t\tself.urls = []\n\t\tself.urlsanitizada= []\n\tdef start_a(self, attrs):\n\t\thref = [v for k, v in attrs if k==&#039;href&#039;]\n\t\tif href:\n\t\t\tself.urls.extend(href)\n\timport urllib\nif __name__ == &quot;__main__&quot;:\n\tsocket = urllib.urlopen(&quot;http:\/\/www.trucoscastleville.com\/&quot;)\n\tparser = URLLister()\n\tparser.feed(socket.read())\n\tparser.close()\n\tsocket.close()\n\tfor url in parser.urls:\n\t\tif url not in parser.urlsanitizada:\n\t\t\tparser.urlsanitizada.append(url)\n\t\n\t\n\tfor url in parser.urlsanitizada: \n\t\tif url.find(&quot;http:\/\/www.trucoscastleville.com\/2012&quot;) &gt;= 0:\n\t\t\tif url.find(&quot;#comment-&quot;) == -1:\n\t\t\t\tif __name__ == &quot;__main__&quot;:\t\t\t\t\n\t\t\t\t\tsocket2 = urllib.urlopen(url)\n\t\t\t\t\tparser2 = URLLister()\n\t\t\t\t\tparser2.feed(socket2.read())\n\t\t\t\t\tparser2.close()\n\t\t\t\t\tsocket2.close()\n\t\t\t\t\tfor url in parser2.urls:\n\t\t\t\t\t\tif url not in parser2.urlsanitizada:\n\t\t\t\t\t\t\tparser2.urlsanitizada.append(url)\n\t\t\t\t\tn=0\n\t\t\t\t\tfor url in parser2.urlsanitizada: \n\t\t\t\t\t\tif url.find(&quot;apps.facebook.com&quot;) &gt;= 0:\n\t\t\t\t\t\t\tn=n+1\n\t\t\t\t\t\t\twebbrowser.open(url, new=2, autoraise=False)\n\t\t\t\t\t\t\ttime.sleep(15)\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Este c\u00f3digo lo ide\u00e9 en un tiempo que jugaba al Castleville, uno de los muchos juegos que circulan por Facebook. La idea en este script es bastante b\u00e1sica: Existe una p\u00e1gina, http:\/\/www.trucoscastleville.com, en donde, adem\u00e1s de publicar recompensas diarias, la&hellip;<\/p>\n<p class=\"more-link-p\"><a class=\"more-link\" href=\"https:\/\/www.jbahillo.com\/?page_id=143\">Read more &rarr;<\/a><\/p>\n","protected":false},"author":21,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"page_fullwidth.php","meta":{"ep_exclude_from_search":false,"footnotes":""},"class_list":["post-143","page","type-page","status-publish","hentry"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"C\u00f3digo para obtener las recompensas de http:\/\/www.trucoscastleville.com de modo autom\u00e1tico\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"keywords\" content=\"castleville,facebook,trucos,recompensas.\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.jbahillo.com\/?page_id=143\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Javier Bahillo | Blog de un Administrador de Sistemas\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"[python]Castleville.py | Javier Bahillo\" \/>\n\t\t<meta property=\"og:description\" content=\"C\u00f3digo para obtener las recompensas de http:\/\/www.trucoscastleville.com de modo autom\u00e1tico\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.jbahillo.com\/?page_id=143\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2012-04-30T13:21:44+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2012-06-11T08:29:00+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"[python]Castleville.py | Javier Bahillo\" \/>\n\t\t<meta name=\"twitter:description\" content=\"C\u00f3digo para obtener las recompensas de http:\/\/www.trucoscastleville.com de modo autom\u00e1tico\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.jbahillo.com\\\/?page_id=143#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.jbahillo.com#listItem\",\"position\":1,\"name\":\"Inicio\",\"item\":\"https:\\\/\\\/www.jbahillo.com\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.jbahillo.com\\\/?page_id=143#listItem\",\"name\":\"[Python] Castleville.py\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.jbahillo.com\\\/?page_id=143#listItem\",\"position\":2,\"name\":\"[Python] Castleville.py\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.jbahillo.com#listItem\",\"name\":\"Inicio\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.jbahillo.com\\\/#organization\",\"name\":\"Javier Bahillo\",\"description\":\"Blog de un Administrador de Sistemas\",\"url\":\"https:\\\/\\\/www.jbahillo.com\\\/\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.jbahillo.com\\\/?page_id=143#webpage\",\"url\":\"https:\\\/\\\/www.jbahillo.com\\\/?page_id=143\",\"name\":\"[python]Castleville.py | Javier Bahillo\",\"description\":\"C\\u00f3digo para obtener las recompensas de http:\\\/\\\/www.trucoscastleville.com de modo autom\\u00e1tico\",\"inLanguage\":\"es-ES\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.jbahillo.com\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.jbahillo.com\\\/?page_id=143#breadcrumblist\"},\"datePublished\":\"2012-04-30T14:21:44+01:00\",\"dateModified\":\"2012-06-11T09:29:00+01:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.jbahillo.com\\\/#website\",\"url\":\"https:\\\/\\\/www.jbahillo.com\\\/\",\"name\":\"Javier Bahillo\",\"description\":\"Blog de un Administrador de Sistemas\",\"inLanguage\":\"es-ES\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.jbahillo.com\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"[python]Castleville.py | Javier Bahillo","description":"C\u00f3digo para obtener las recompensas de http:\/\/www.trucoscastleville.com de modo autom\u00e1tico","canonical_url":"https:\/\/www.jbahillo.com\/?page_id=143","robots":"max-image-preview:large","keywords":"castleville,facebook,trucos,recompensas.","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BreadcrumbList","@id":"https:\/\/www.jbahillo.com\/?page_id=143#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/www.jbahillo.com#listItem","position":1,"name":"Inicio","item":"https:\/\/www.jbahillo.com","nextItem":{"@type":"ListItem","@id":"https:\/\/www.jbahillo.com\/?page_id=143#listItem","name":"[Python] Castleville.py"}},{"@type":"ListItem","@id":"https:\/\/www.jbahillo.com\/?page_id=143#listItem","position":2,"name":"[Python] Castleville.py","previousItem":{"@type":"ListItem","@id":"https:\/\/www.jbahillo.com#listItem","name":"Inicio"}}]},{"@type":"Organization","@id":"https:\/\/www.jbahillo.com\/#organization","name":"Javier Bahillo","description":"Blog de un Administrador de Sistemas","url":"https:\/\/www.jbahillo.com\/"},{"@type":"WebPage","@id":"https:\/\/www.jbahillo.com\/?page_id=143#webpage","url":"https:\/\/www.jbahillo.com\/?page_id=143","name":"[python]Castleville.py | Javier Bahillo","description":"C\u00f3digo para obtener las recompensas de http:\/\/www.trucoscastleville.com de modo autom\u00e1tico","inLanguage":"es-ES","isPartOf":{"@id":"https:\/\/www.jbahillo.com\/#website"},"breadcrumb":{"@id":"https:\/\/www.jbahillo.com\/?page_id=143#breadcrumblist"},"datePublished":"2012-04-30T14:21:44+01:00","dateModified":"2012-06-11T09:29:00+01:00"},{"@type":"WebSite","@id":"https:\/\/www.jbahillo.com\/#website","url":"https:\/\/www.jbahillo.com\/","name":"Javier Bahillo","description":"Blog de un Administrador de Sistemas","inLanguage":"es-ES","publisher":{"@id":"https:\/\/www.jbahillo.com\/#organization"}}]},"og:locale":"es_ES","og:site_name":"Javier Bahillo | Blog de un Administrador de Sistemas","og:type":"article","og:title":"[python]Castleville.py | Javier Bahillo","og:description":"C\u00f3digo para obtener las recompensas de http:\/\/www.trucoscastleville.com de modo autom\u00e1tico","og:url":"https:\/\/www.jbahillo.com\/?page_id=143","article:published_time":"2012-04-30T13:21:44+00:00","article:modified_time":"2012-06-11T08:29:00+00:00","twitter:card":"summary","twitter:title":"[python]Castleville.py | Javier Bahillo","twitter:description":"C\u00f3digo para obtener las recompensas de http:\/\/www.trucoscastleville.com de modo autom\u00e1tico"},"aioseo_meta_data":{"post_id":"143","title":"[python]Castleville.py | #site_title","description":"C\u00f3digo para obtener las recompensas de http:\/\/www.trucoscastleville.com de modo autom\u00e1tico","keywords":[{"label":"Castleville","value":"Castleville"},{"label":"facebook","value":"facebook"},{"label":"trucos","value":"trucos"},{"label":"recompensas.","value":"recompensas."}],"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[],"defaultGraph":"","defaultPostTypeGraph":""},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2021-04-23 00:43:21","updated":"2025-06-03 23:08:31","seo_analyzer_scan_date":null},"jetpack_shortlink":"https:\/\/wp.me\/P74T96-2j","jetpack-related-posts":[],"jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.jbahillo.com\/index.php?rest_route=\/wp\/v2\/pages\/143","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.jbahillo.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.jbahillo.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.jbahillo.com\/index.php?rest_route=\/wp\/v2\/users\/21"}],"replies":[{"embeddable":true,"href":"https:\/\/www.jbahillo.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=143"}],"version-history":[{"count":7,"href":"https:\/\/www.jbahillo.com\/index.php?rest_route=\/wp\/v2\/pages\/143\/revisions"}],"predecessor-version":[{"id":403,"href":"https:\/\/www.jbahillo.com\/index.php?rest_route=\/wp\/v2\/pages\/143\/revisions\/403"}],"wp:attachment":[{"href":"https:\/\/www.jbahillo.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=143"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}