Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

22.01.2010, 01:22
|
|
Новичок
Регистрация: 08.01.2010
Сообщений: 11
Провел на форуме: 14160
Репутация:
0
|
|
ну пока вроде цикл работает без проблем
такой еще вопрос
читается лог
Код:
with open(path2mislog, 'r') as f:
logfile = f.readlines()
f.closed
logfile = list(set(logfile))
logfile = sorted(logfile)
из него удаляются одинаковые строки
после чего слетает сортировка по времени
сортирую
но события которые происходят в одно и тоже время не всегда встают на места
это можно как то исправить?
|
|
|

23.01.2010, 22:51
|
|
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме: 4512757
Репутация:
973
|
|
Сообщение от Vaal
ну пока вроде цикл работает без проблем
такой еще вопрос
читается лог
Код:
with open(path2mislog, 'r') as f:
logfile = f.readlines()
f.closed
logfile = list(set(logfile))
logfile = sorted(logfile)
из него удаляются одинаковые строки
после чего слетает сортировка по времени
сортирую
но события которые происходят в одно и тоже время не всегда встают на места
это можно как то исправить?
Лично я - хз как, я бы удаление дублей делал бы в таком случае не так - создавал бы два массива, а потом циклом гонял бы по одному и вставлял в другой массив - тогда должен сохраниться порядок
|
|
|

23.01.2010, 23:34
|
|
Участник форума
Регистрация: 15.07.2009
Сообщений: 158
Провел на форуме: 698831
Репутация:
34
|
|
есть скрипт парсинга гугла по определенному запросу и запись результатов в текстовик:
Код:
#!usr/bin/env python3
dork = 'inurl:page_id+"Gallery+powered+by+fMoblog"'
page = 10
reg = 'class=r»«a href="([^"&]*)'
print "# start"
print "# dork:" + dork
print "# all page: " + str(page)
fo = open('google.txt','w')
print "# google.txt open"
import curl
import time
import re
for i in xrange(0,page):
url = "http://www.google.com/search?q="+dork+"&start=" + str(i*10)
rez = curl.url_get(url)
rez = re.findall(reg,rez)
for item in rez:
fo.write(item+"\n")
print "# page "+str(i+1)+" done"
time.sleep(2)
fo.close
print '# all done'
он не работает...в чем ошибка ?
ругается на строку
url = "http://www.google.com/search?q="+dork+"&start=" + str(i*10)
Последний раз редактировалось daniel_1024; 24.01.2010 в 12:03..
|
|
|

24.01.2010, 01:40
|
|
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме: 4512757
Репутация:
973
|
|
Сообщение от daniel_1024
есть скрипт парсинга гугла по определенному запросу и запись результатов в текстовик:
PHP код:
#!usr/bin/env python3
dork = 'inurl:page_id+"Gallery+powered+by+fMoblog"'
page = 10
reg = 'class=r»«a href="([^"&]*)'
print "# start"
print "# dork:" + dork
print "# all page: " + str(page)
fo = open('google.txt','w')
print "# google.txt open"
import curl
import time
import re
for i in xrange(0,page):
url = "http://www.google.com/search?q="+dork+"&start=" + str(i*10)
rez = curl.url_get(url)
rez = re.findall(reg,rez)
for item in rez:
fo.write(item+"\n")
print "# page "+str(i+1)+" done"
time.sleep(2)
fo.close
print '# all done'
он не работает...в чем ошибка ?
ругается на строку
url = "http://www.google.com/search?q="+dork+"&start=" + str(i*10)
Наверное потому что ты забил на отступы.
До тех пор пока будешь Python-код подсвечивать как PHP-код, то у тебя ни один из скриптов работать и не будет.
|
|
|

24.01.2010, 18:59
|
|
Новичок
Регистрация: 08.01.2010
Сообщений: 11
Провел на форуме: 14160
Репутация:
0
|
|
Сообщение от login999
Лично я - хз как, я бы удаление дублей делал бы в таком случае не так - создавал бы два массива, а потом циклом гонял бы по одному и вставлял в другой массив - тогда должен сохраниться порядок
кажется то что нужно?
http://stackoverflow.com/questions/1801459/algorithm-how-to-delete-duplicate-elements-in-a-list-efficiently/1801471#1801471
|
|
|

24.01.2010, 21:25
|
|
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме: 4512757
Репутация:
973
|
|
Сообщение от Vaal
кажется то что нужно?
http://stackoverflow.com/questions/1801459/algorithm-how-to-delete-duplicate-elements-in-a-list-efficiently/1801471#1801471
Ну хз, я там вижу большинство кода на других ЯП 
Для питона основное решение там - это то, что я предлагал.
Моё решение :
Код:
def remove_dupies(lst):
sorted_lst = []
for x in lst:
if x not in sorted_lst:
sorted_lst.append(x)
return sorted_lst
with open(path2mislog, 'r') as f:
logfile = f.readlines()
f.closed
logfile = remove_dupies(logfile)
logfile = sorted(logfile)
Никакой оригинальности/производительности. Тривиальное решение, которое подхавает оперативки в двухкратном размере файла. Если нужно что-то покруче, то хз придется изьёбываться 
|
|
|

24.01.2010, 22:05
|
|
Постоянный
Регистрация: 06.01.2010
Сообщений: 785
Провел на форуме: 1777031
Репутация:
256
|
|
Сообщение от daniel_1024
есть скрипт парсинга гугла по определенному запросу и запись результатов в текстовик:
Код:
#!usr/bin/env python3
dork = 'inurl:page_id+"Gallery+powered+by+fMoblog"'
page = 10
reg = 'class=r»«a href="([^"&]*)'
print "# start"
print "# dork:" + dork
print "# all page: " + str(page)
fo = open('google.txt','w')
print "# google.txt open"
import curl
import time
import re
for i in xrange(0,page):
url = "http://www.google.com/search?q="+dork+"&start=" + str(i*10)
rez = curl.url_get(url)
rez = re.findall(reg,rez)
for item in rez:
fo.write(item+"\n")
print "# page "+str(i+1)+" done"
time.sleep(2)
fo.close
print '# all done'
он не работает...в чем ошибка ?
ругается на строку
url = "http://www.google.com/search?q="+dork+"&start=" + str(i*10)
Скажите как изменить чтобы работал? Как раз нужен подобный скрипт 
|
|
|

25.01.2010, 10:22
|
|
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме: 4512757
Репутация:
973
|
|
Сообщение от CyberHunter
Скажите как изменить чтобы работал? Как раз нужен подобный скрипт 
Эмм, если честно, то я не уверен что он вам подойдёт, если обратите внимание на то, что он требует pyCURL и знание питоновских регулярок...
Лучше уж пропросите чтоб Вам его переписали под стандартную библиотеку...
Но на всякий случай :
Код:
#!usr/bin/env python3
import re
import curl
import time
dork = 'inurl:page_id+"Gallery+powered+by+fMoblog"'
page = 10
reg = 'class=r»«a href="([^"&]*)'
print "# start"
print "# dork:" + dork
print "# all page: " + str(page)
fo = open('google.txt','w')
print "# google.txt open"
for i in xrange(0,page):
url = "http://www.google.com/search?q="+dork+"&start=" + str(i*10)
rez = curl.url_get(url)
rez = re.findall(reg,rez)
for item in rez:
fo.write(item+"\n")
print "# page "+str(i+1)+" done"
time.sleep(2)
fo.close
print '# all done'
P.S. pyCURL под рукой нету чтобы проверить, но должно работать.
|
|
|

25.01.2010, 21:49
|
|
Участник форума
Регистрация: 15.07.2009
Сообщений: 158
Провел на форуме: 698831
Репутация:
34
|
|
login999 подскажи пожалуйста что надо с pyCURL делать ? как подключить ? скачал я из инета набор файлов отсюда , что дальше?! 
|
|
|

26.01.2010, 01:34
|
|
Познавший АНТИЧАТ
Регистрация: 26.03.2007
Сообщений: 1,095
Провел на форуме: 5265510
Репутация:
455
|
|
он не работает...в чем ошибка ?
Так же гугл отбрасывает сторонние юсерагенты.
login999 подскажи пожалуйста что надо с pyCURL делать ? как подключить ? скачал я из инета набор файлов отсюда , что дальше?!
Гугл в помощь =) Какая версия питона? а так http://python.su/forum/viewtopic.php?id=3985
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|