AlexN
Задачка:
1. Скрипт берет txt из файла URL. Одна строка - один домен, варианты:
http://domain.com
http://domain.com/
http://domain.com/site/page.php
2. Чекает домен на сайте websitetrafficspy.com. Делается это путем подстановки домена в качестве домена третьего уровня - domain.com.websitetrafficspy.com
3. Парсим со страницы цифру Monthly Users
4. Формируем вывод в txt вида URL_исходный;цифра
Между запросами желательно делать рандом задержку 0-3 секунды.
Вроде, не сложно icon_cool.gif
Дартаньян
AlexN:
# -*- coding: utf-8 -*-
#!/usr/bin/env python
from urlparse import urlparse
from random import randint
import sys, urllib2, re, time
def getData(nfile):
with open("true.txt", 'w') as wfile:
for url in open(nfile, 'r'):
try:
headers = {'User-Agent' : 'Mozilla/4.0 (compatible MSIE 7.0 Windows NT 6.0 SLCC1 .NET CLR 2.0.50727 Media Center PC 5.0 .NET CLR 3.0.30618 .NET CLR 3.5.30729 AskTbFXTV5/5.12.2.16749)'}
req = urllib2.Request('http://'+urlparse(url.strip()).netloc + '.websitetrafficspy.com/', None, headers)
data = urllib2.urlopen(req).read()
wfile.write(re.findall('<td>\n(.*)<span class="delta">', data)[1] + ";;"+url.strip()+"\n")
del(data)
#time.sleep(randint(0,8))
wfile.flush()
except KeyboardInterrupt:
sys.exit('exit!')
except Exception as e:
print(str(e)+";;"+url.strip())
return 'Finish!'
if __name__ == '__main__':
print(getData(sys.argv[1]))