Я пытаюсь взять входной файл, прочитать каждую строку, выполнить поиск в Google с этой строкой и распечатать все результаты поиска из запроса ТОЛЬКО ЕСЛИ результат получен с определенного сайта. Простой пример, иллюстрирующий мою мысль, если я ищу собаку, мне нужны только результаты, напечатанные из Википедии, будь то один результат или десять результатов из Википедии. Моя проблема в том, что я получаю действительно странные результаты. Ниже приведен код Python, содержащий определенный URL-адрес, из которого я хочу получить результаты.Поиск в Google из программы Python
Моя программа
inputFile = open("small.txt", 'r') # Makes File object
outputFile = open("results1.txt", "w")
dictionary = {} # Our "hash table"
compare = "www.someurl.com/" # urls will compare against this string
from googlesearch import GoogleSearch
for line in inputFile.read().splitlines():
lineToRead = line
dictionary[lineToRead] = [] #initialzed to empty list
gs = GoogleSearch(lineToRead)
for url in gs.top_urls():
print url # check to make sure this is printing URLs
compare2 = url
if compare in compare2: #compare the two URLs, if they match
dictionary[lineToRead].append(url) #write out query string to dictionary key & append EACH url that matches
inputFile.close()
for i in dictionary:
print i # this print is a test that shows what the query was in google (dictionary key)
outputFile.write(i+"\n")
for j in dictionary[i]:
print j # this print is a test that shows the results from the query which should look like correct URL: "www.medicaldepartmentstore.com/..."(dictionary value(s))
outputFile.write(j+"\n") #write results for the query string to the output file.
Мой выходной файл неверен, как это должно быть отформатирован в
query string
http://www.
http://www.
http://www.
query string
http://www.
query string
http://www.medical...
http://www.medical...
Если вы заботитесь о том, результатах более чем одного домена, вы можете написать небольшой метод для генерации 'site' строки , Чтобы сделать несколько сайтов, просто используйте 'OR' - например' site: wikipedia.org OR site: stackoverflow.com' – Tommy
Я не думал об этом, но это именно то, что я хочу сделать. @Cahit – fatalError
@Tommy, это отличное предложение для другой проблемы, но я надеялся ограничить свои результаты только одним конкретным доменом. – fatalError