Прошу прощения, затупил конкретно. Все что было до этого не считается.
Если все данные в файле, то как я понимаю мы можем прочитать его с помощью следующего кода:
urls = open('urls.txt', 'r').read()
После того как мы его прочитаем нам его даже на массив строк разбивать не нужно. Есть замечательная функция find. Если строка найдена, то возвращает номер символа с которого начинается строка, если ее нет возвращает -1.
Весть код будет выглядеть так:
url = 'http://google.ru/'
urls = open('urls.txt', 'r').read()
find = urls.find(url)
if find==-1:
urls.close()
urls = open('urls.txt', 'w').write(url)
else:
#тут код который вызываем при нахождении урла в базе.
Если url несколько, то их пилим в массив, и каждый ищем в базе, скорость поиска зашкаливает (если все правильно написать).