Witam pisze skrypt dla kumpla ktory jest pozycjonerem potrzebuje on liste wloskich katalogow...
Za pomoca urllib.request cos mi nie szlo naszczesnie znalazlem lepsze rozwiazanie pyGoogle i xgoogle
O ile xgoogle jest nowsza i ciekawiej wyglada to mam maly problem:
import sys
import urlparse
from xgoogle.search import GoogleSearch, SearchError
class Seo:
def _url_contains(self, links, url):
for link in links:
www = urlparse.urlparse(url)
www_link = urlparse.urlparse(link)
if www_link[1] == www[1]:
return True
return False
def __init__(self):
self.links = []
try:
google = GoogleSearch("catalogo siti")
google.page = 0
google.results_per_page = 50
key = 0
while google.page <= 10:
for link in google.get_results():
if not self._url_contains(self.links, link):
self.links.append(link.url.encode("utf-8"))
key += 1
google.page += 1
except SearchError, e:
print("Wystapil blad: ", e)
except:
print(sys.exc_info())
if __name__ == "__main__":
seo = Seo()
for nr,url in enumerate(seo.links):
print "%d. %s" % (nr, url)
No i dostaje:
(<type 'exceptions.AttributeError'>, AttributeError("SearchResult instance has no attribute 'find'",), <traceback object at 0x01265238>)
Ogolnie to jest wina metody _url_contains() bo bez niej dzialalo ale dublowalo mi znalezione linki, a chce miec kazdy link jednorazowo...
czy ktos zdola pomoc?