@ru_python

Страница 1798 из 9768
#ArtiChatSki
19.11.2016
07:41:01
добавил это msg = msg.replace('\n', '').replace('\t', '').replace('\r', '') но чет dict object has no attribute replace

ааа твой msg это словарь

честно хз ... че-нить простое типа список туплей, я ваще в этом не рублю)

как мне переход на новую строку заменить на пробел?

Google
#ArtiChatSki
19.11.2016
07:51:42
Msg.get('text').replace(...)
for item in jsonfile: msg = json.loads(item) msg.get("text").replace('\n', '').replace('\t', '').replace('\r', '') csvwriter.writerow([ msg["from"].get("username", "unknown"), msg["from"].get("peer_id", "unknown"), msg["to"].get("username", "unknown"), msg["to"].get("peer_id", "unknown"), get_isodate(msg), msg.get("text", "no text") ]) что не так?

nonetype object has no attribute replace

Maxim robox
19.11.2016
07:53:55
Во-вторых, сделай if Msg.get...: msg.get(...).replace(...). У тебя сейчас спотыкается на итерации, где нет объекта text

#ArtiChatSki
19.11.2016
07:57:07
тут он есть? msg.get("text", "no text")

Maxim robox
19.11.2016
07:57:52
в какой строке появляется объект текст?
Мне-то откуда знать? Я же не вижу твой исходник данных.

#ArtiChatSki
19.11.2016
08:01:31
там вообще нигде больше нет text

Maxim robox
19.11.2016
08:02:36
там вообще нигде больше нет text
Вот код и спотыкается на тех случаях, где его нет

Ладно, я с телефона все равно так себе помощник. Я сваливаю.

#ArtiChatSki
19.11.2016
08:03:21
msg.get("text", "no text") но эта же строка работает

Google
Maxim robox
19.11.2016
08:09:26
msg.get("text", "no text") но эта же строка работает
Потому что метод гет возвращает твое notext, когда не находит ключ text

#ArtiChatSki
19.11.2016
08:11:02
Потому что метод гет возвращает твое notext, когда не находит ключ text
msg.get("text", "no text").replace('\n', '').replace('\t', '').replace('\r', '') почему так работает?

#ArtiChatSki
19.11.2016
08:11:57
понял

в общем вот этот код онлайн, мне надо добавить замену новой строки на пробел

https://gist.github.com/hay/7f5124f9992038d6c1ed00e1ed52772f

Yan?
19.11.2016
09:12:49
У меня теперь другой вопрос по коду

Используя тот самый, кода как возможно убрать из allTags текст, который находится в div-e, в названии которого фигурирует слово comments? Вот есть такой див class="b-content-w b-content-w-comments Я думаю, что сначала выцепить все названия div-ов в лист, затем уже каждый элемент искать на наличие comments и как-то его вырезать из основного текста

html = urlopen("https://vc.ru/p/why-no-leave-ny") bsObj = BeautifulSoup(html.read()) allTags = bsObj.findAll("p") file = open("/Users/user/Desktop/pythonFile.txt", "w") for tag in allTags: file.write(tag.get_text())

Yan?
19.11.2016
09:21:27
*Тот самый кусок кода

Ray
19.11.2016
09:22:40
ок ... а что значит название дива ?

Nikolay
19.11.2016
09:24:08
это вам в python_beginners

Yan?
19.11.2016
09:24:55
ок ... а что значит название дива ?
Есть <div class="b-content-w b-content-w-comments>, например. Мне нужно весь контент, который содержится внутри него удалить, потому что в имени класса фигурирует слово comments.

Ray
19.11.2016
09:25:12
ну так бы и написали

название дива

подберите регулярку, которая будет матчить нужный класс. Затратно будет сперва вытащить все div элементы в список, и потом итерировать по нему.

b0g3r
19.11.2016
09:29:17
Чего

Какая регулярка

Google
Yan?
19.11.2016
09:29:33
Зачем регулярка?

Я думаю, что можно и без нее как-то справиться.

b0g3r
19.11.2016
09:29:44
Человек суп использует)

Ray
19.11.2016
09:30:25
человек хочет вытащить все дивы и потом только искать нужные

а если их там овер 10 в 6

?

soup.findAll("div", { "class" : регулярка_матчит_все_где_есть_commnet })

шо не так ?

Ivan
19.11.2016
09:33:17
Где найти такой же чат только по cpp?

Ray
19.11.2016
09:35:23
Dan
19.11.2016
09:38:10
soup.findAll("div", { "class" : регулярка_матчит_все_где_есть_commnet })
а есть возможность определить родителя нужных div-ов ? мне кажется так будет проще

Alexey
19.11.2016
09:56:14
cpp давно мерт (как qt и С)
Заканчивай херню эту писать

Yan?
19.11.2016
09:58:14
Спасибо, буду с регуляркой мучиться

Nikolay
19.11.2016
09:59:04
мучайся

Alexey
19.11.2016
10:01:32
wuzzapcom
19.11.2016
10:52:43
Всем привет Тут никто случайно не работал с protobuf3 на питоне?

Pavel
19.11.2016
11:12:08
а есть возможность определить родителя нужных div-ов ? мне кажется так будет проще
Xpath же придумали специально для поиска по xml/html деревьям

Ssi
19.11.2016
11:54:24
Заканчивай херню эту писать
Ну, ты знаешь этих хипстеров... напьются своего смузи и давай технологии хоронить...

I
19.11.2016
11:55:38
Всем привет Тут никто случайно не работал с protobuf3 на питоне?
На второй сидим, хотим на третью уползти

Rustem
19.11.2016
12:25:49
Ребят, как со словаря {'key': 'value'} вытащить 'key'? Имеется список словарей, вот у каждого элемента списка(словаря) нужно получить ключ, а по ключу - значение

Google
b0g3r
19.11.2016
12:26:27
for key, val in dict.items(): print(key, val)

Михаил
19.11.2016
12:26:31
dict.keys()

b0g3r
19.11.2016
12:26:48
человеку нужен не список ключей, а пары ключ-значение

Admin
ERROR: S client not available

Rustem
19.11.2016
12:30:21
Aragaer
19.11.2016
12:30:48
во втором питоне лучше iteritems

b0g3r
19.11.2016
12:31:07
+

Rustem
19.11.2016
12:31:20
3.5 использую

wuzzapcom
19.11.2016
12:55:16
На второй сидим, хотим на третью уползти
А питон второй или третий? У меня при попытке запустить на 3 гугловская библиотека не видится, есть версия для 3 питона?

I
19.11.2016
13:00:50
Питон 2.7.11, вроде

А пип от третьего дергаете? Или какой пакетный менеджер сейчас популярен?

wuzzapcom
19.11.2016
13:37:06
А пип от третьего дергаете? Или какой пакетный менеджер сейчас популярен?
Разве есть разные pip для второго и третьего питона? Я скачивал командой pip install protobuf

Pavel
19.11.2016
13:37:39
если стоит второй и третий рядом, то пип от третьего вызывается командой pip3

ну точнее это зависит от дефолтного питона в системе

wuzzapcom
19.11.2016
13:38:48
Аа В макоси дефолтный 2.7 вроде, тогда понятно, почему не работает

Pavel
19.11.2016
13:39:24
а третий там из коробки разве есть вообще?

его, небось, через homebrew ставить надо

wuzzapcom
19.11.2016
13:40:37
Хороший вопрос, сейчас проверю

Pavel
19.11.2016
13:41:43
я обычно и второй тоже через homebrew доставляю и с ним работаю

Google
Pavel
19.11.2016
13:41:58
чтобы с системным вообще никакого пересечения не иметь

wuzzapcom
19.11.2016
13:43:40
Чем системные плохи?

Pavel
19.11.2016
13:44:34
как минимум реже обновляются :)

ну и я сильно не уверен что при апгрейде макоси не снесётся всё доставленное в site-packages.

так спокойнее и можно делать вообще что угодно без боязни порушить систему

wuzzapcom
19.11.2016
13:48:25
В принципе да, согласен)

I
19.11.2016
16:11:17
+
ну тут от того фриланса, которым занимаешься, зависит

Andrii
19.11.2016
16:12:36
ну тут от того фриланса, которым занимаешься, зависит
Если ты имеешь 5 лет опыта, то может и можно, а если Джун то на контору надо, качаться

Pavel
19.11.2016
16:16:14
а почему после фриланса джуном?

Maxim robox
19.11.2016
16:18:30
Pavel
19.11.2016
16:18:49
вирлуаленв ничего не отменяет :)

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