@ru_python

Страница 2009 из 9768
b0g3r
09.01.2017
14:58:02
HTML

Хром пытается его сделать валидным

Из-за этого разница

Whore Amazing
09.01.2017
14:58:22
угу

Google
Denis
09.01.2017
14:58:28
Разве без tbody невалидно?

Whore Amazing
09.01.2017
14:58:31
автогенерация наверн

пес его знает главное, я проблему решил

b0g3r
09.01.2017
14:59:15
Лучше смотреть исходный код через "показать исходный код"

Whore Amazing
09.01.2017
15:01:38
Лучше смотреть исходный код через "показать исходный код"
там показывает хромовские включения как раз надо через ктрл+У

Andrey
09.01.2017
15:03:36
лучше firebug использовать

я из него xpath копипастил

Марк
09.01.2017
15:04:08
На хроме он какой-то кривой(

Andrey
09.01.2017
15:04:18
но вообще запросы лучше самому писать

Rookie
09.01.2017
15:04:29
Да и в мозилле не прямее

Andrey
09.01.2017
15:05:27
xpath из отладчиков имеет вид tag[order], когда структура чуть документа плывёт (а это происходит чуть чаще, чем всегда), то всё встаёт колом

Google
Whore Amazing
09.01.2017
15:06:09
да там кого писать-то все достаточно просто

Rookie
09.01.2017
15:06:33
Да и вообще, он старается показать полный path, а зачастую есть более короткие и красивые варианты

Andrey
09.01.2017
15:07:17
ну вообще парсинг HTML это тот ещё ад

Whore Amazing
09.01.2017
15:07:26
их пока высчитаешь проще и быстрее написать длинный)

Andrey
09.01.2017
15:07:34
по возможности избегайте этого

Whore Amazing
09.01.2017
15:07:56
если бы я мог, я бы избежал

Игорь
09.01.2017
15:08:00
недавно проскакивала ссылка на новую библиотеку для парсинга html

Whore Amazing
09.01.2017
15:08:26
но пока других заказов нет вот скоро будет буду часто в чат вкатываться с вопросами по киви)

Andrey
09.01.2017
15:08:43
недавно проскакивала ссылка на новую библиотеку для парсинга html
да их и так тысячи, только вот у каждой куча минусов

Игорь
09.01.2017
15:08:43
по идее, отличается именно способностью парсить документы с кривой структурой

Andrey
09.01.2017
15:09:01
beautifulsoup тормозной

Whore Amazing
09.01.2017
15:09:08
+

лхмл пока лучший вариант для меня

Rookie
09.01.2017
15:09:19
Киви на джанге, если я правильно помню, питонячье апи должно быть вменяемым

Whore Amazing
09.01.2017
15:09:37
на джанге?

Andrey
09.01.2017
15:09:40
lxml.html — api просто пиздец

Whore Amazing
09.01.2017
15:09:48
это то самое киви, которое пишет под андроид?

Andrey
09.01.2017
15:09:54
возможно проблема в документации, но я вкуривал неделю, наверное

Whore Amazing
09.01.2017
15:09:56
lxml.html — api просто пиздец
да не, я норм управляюсь

Google
Rookie
09.01.2017
15:09:58
Сам сайт, я имею в виду

Whore Amazing
09.01.2017
15:10:07
просто надо читать не доку, а форумы)

Сам сайт, я имею в виду
А. Ну все равно буду заходить, я ж аутист :)

Rookie
09.01.2017
15:10:23
А ты о том)

Игорь
09.01.2017
15:10:38
да кроме lxml ничего реально и не использовать

Rookie
09.01.2017
15:10:38
Я подумал о платёжке.

Мне не понравилось.

Whore Amazing
09.01.2017
15:11:08
за такое сразу в ад попадают

не дожидаясь смерти

Игорь
09.01.2017
15:11:19
регекспы )
они немного колом встают на рекурсиях %(

Andrey
09.01.2017
15:11:24
ну если мне надо что-то быстро распарсить, я юзаю регекспы

Andrey
09.01.2017
15:11:31
ну, что-то простое, естественно

Whore Amazing
09.01.2017
15:11:41
регэкспами невозможно корректно распарсить хтмл

Andrey
09.01.2017
15:11:46
если нужен DOM, тогда да, lxml

Whore Amazing
09.01.2017
15:12:02
проверь

Andrey
09.01.2017
15:12:05
html вообще в принципе нельзя иногда распарсить ничем, потому что он почти всегда невалидный )

Игорь
09.01.2017
15:12:10
регэкспами можно хоть дум3 написать!

Google
Andrey
09.01.2017
15:12:42
кое-чем можно
ну тормозным бьютифулсоупом

Whore Amazing
09.01.2017
15:12:47
РУКАМИ

Andrey
09.01.2017
15:12:53
ну браузеры ведь справляются
ты ещё фронтенд вспомни

Игорь
09.01.2017
15:13:25
полноценно распарсить как есть — невозможно, а вот ввести некоторые обоснованные допущения — и ок

b0g3r
09.01.2017
15:35:41
бл, второй день qtcentre лежит

Admin
ERROR: S client not available

b0g3r
09.01.2017
15:36:10
вот спрашивается зачем форумы, когда есть со

Arseniy
09.01.2017
15:57:44
Привет всем. Не подскажете с установкой проги? Сам на питоне мало писал, с подключениями не работал. https://github.com/ernw/net.tcp-proxy При запуске пишет что-то вроде: Traceback (most recent call last): File "/usr/local/bin/nettcp-proxy.py", line 3, in <module> from nettcp.proxy import main File "/usr/local/lib/python2.7/dist-packages/nettcp/proxy.py", line 18, in <module> from .stream.socket import SocketStream ImportError: No module named stream.socket stream.socket это похоже stream/socket.py, но интерпретатор его в упор не видит. Спасибо

here1am
09.01.2017
16:03:18
strace -fe trace=open команда и пали, куда интерпретатор суётся за либой

правда это я как админ советую, а не как питонщик, может кто лучше посоветует

Aragaer
09.01.2017
16:04:01
/me полностью поддерживает такой подход

Pavel
09.01.2017
16:36:55
А есть какое-нибудь апи, куда отправляешь дату, а оно в ответ - рабочий или праздничный день в РФ, с учётом переносов праздников и всего такого?

.
09.01.2017
16:44:43
Гайс, есть задача, хз как лучше её решать. Есть текст, надо с помощью регулярных выражений проверять наличие опр. комбинаций, при их обнаружении нужно вставлять до и после этих комбинаций свой текст. Есть код, который решает данную проблему только при поиске 1 комбинации, как лучше всего организовать поиск множества комбинаций? answers = [] reg = re.compile('>>[\d]+') q = 0 for x in re.finditer(reg, comment.comments_text): q += 1 t = q e = 0 while q != 0: w = re.finditer(reg, comment.comments_text) k = 0 for x in w: if e == t - q: if x.span()[0] == 0 and e == 0: answers.append(comment.comments_text[2:x.span()[1]]) comment.comments_text = '<a class="link-reply" data-num="%s">' %comment.comments_text[2:x.span()[1]] + comment.comments_text[:x.span()[1]] + '</a>' + comment.comments_text[x.span()[1]:] break else: if k == t - q: answers.append(comment.comments_text[x.span()[0] + 2:x.span()[1]]) comment.comments_text = comment.comments_text[:x.span()[0]] + '<a class="link-reply" data-num="%s">' %comment.comments_text[x.span()[0]+2:x.span()[1]] + comment.comments_text[x.span()[0]:x.span()[1]] + '</a>' + comment.comments_text[x.span()[1]:] break k += 1 e += 1 q -= 1answers особо не имеет отношения к этой задачи, это для другой я использую

Google
Kolyann
09.01.2017
16:47:51
Гайс, есть задача, хз как лучше её решать. Есть текст, надо с помощью регулярных выражений проверять наличие опр. комбинаций, при их обнаружении нужно вставлять до и после этих комбинаций свой текст. Есть код, который решает данную проблему только при поиске 1 комбинации, как лучше всего организовать поиск множества комбинаций? answers = [] reg = re.compile('>>[\d]+') q = 0 for x in re.finditer(reg, comment.comments_text): q += 1 t = q e = 0 while q != 0: w = re.finditer(reg, comment.comments_text) k = 0 for x in w: if e == t - q: if x.span()[0] == 0 and e == 0: answers.append(comment.comments_text[2:x.span()[1]]) comment.comments_text = '<a class="link-reply" data-num="%s">' %comment.comments_text[2:x.span()[1]] + comment.comments_text[:x.span()[1]] + '</a>' + comment.comments_text[x.span()[1]:] break else: if k == t - q: answers.append(comment.comments_text[x.span()[0] + 2:x.span()[1]]) comment.comments_text = comment.comments_text[:x.span()[0]] + '<a class="link-reply" data-num="%s">' %comment.comments_text[x.span()[0]+2:x.span()[1]] + comment.comments_text[x.span()[0]:x.span()[1]] + '</a>' + comment.comments_text[x.span()[1]:] break k += 1 e += 1 q -= 1answers особо не имеет отношения к этой задачи, это для другой я использую
Сделай лист регулярок, да оберни алгоритм выше в фор

.
09.01.2017
16:49:21
ну у меня примерно такая же идея была, но меня пугает кол-во циклов, вот и пришел за советом. Хотелось бы просто, чтобы эта штука быстро отрабатывала

arisu
09.01.2017
16:50:12
Гайс, есть задача, хз как лучше её решать. Есть текст, надо с помощью регулярных выражений проверять наличие опр. комбинаций, при их обнаружении нужно вставлять до и после этих комбинаций свой текст. Есть код, который решает данную проблему только при поиске 1 комбинации, как лучше всего организовать поиск множества комбинаций? answers = [] reg = re.compile('>>[\d]+') q = 0 for x in re.finditer(reg, comment.comments_text): q += 1 t = q e = 0 while q != 0: w = re.finditer(reg, comment.comments_text) k = 0 for x in w: if e == t - q: if x.span()[0] == 0 and e == 0: answers.append(comment.comments_text[2:x.span()[1]]) comment.comments_text = '<a class="link-reply" data-num="%s">' %comment.comments_text[2:x.span()[1]] + comment.comments_text[:x.span()[1]] + '</a>' + comment.comments_text[x.span()[1]:] break else: if k == t - q: answers.append(comment.comments_text[x.span()[0] + 2:x.span()[1]]) comment.comments_text = comment.comments_text[:x.span()[0]] + '<a class="link-reply" data-num="%s">' %comment.comments_text[x.span()[0]+2:x.span()[1]] + comment.comments_text[x.span()[0]:x.span()[1]] + '</a>' + comment.comments_text[x.span()[1]:] break k += 1 e += 1 q -= 1answers особо не имеет отношения к этой задачи, это для другой я использую
обожечтоэто

re.sub уже не годится?\

я так понимаю, это очередная борда

судя по »\d+

Kolyann
09.01.2017
16:51:17
Вообще я бы начал с этого: http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags

arisu
09.01.2017
16:51:44
по-моему все делается намного проще

.
09.01.2017
16:52:14
это борда

arisu
09.01.2017
16:52:26
я даже не хочу читать эту простыню

Kolyann
09.01.2017
16:54:06
Завтра ищешь в интернете книжку Dive into python...

Дощанов
09.01.2017
16:54:12
Privet vsem

Fumycat
09.01.2017
16:54:26
Дощанов
09.01.2017
16:54:46
Shto takoe pyton

?

Nikolay
09.01.2017
16:54:55
блин, не та картинка

Denis
09.01.2017
16:55:26
Shto takoe pyton
Zmeya takaya

.
09.01.2017
16:55:32
Колян, не совсем понял что там на стэковерфлоу. Я считай все изменения делаю в бд

Страница 2009 из 9768