Danil
а хочется типа слайса по локальному спейсу?
Danil
mydict = {k,v for k,v in locals().items() if k in ['title', ...]}
Danil
Но зачем? )
Danil
def (**kwargs): return kwargs
Ruslan
Danil
я вот только не понял что надо то )
Ruslan
def get_aricles(url):
html = get_html(url)
soup = BeautifulSoup(html, 'html.parser')
title = soup.find('span', 'lede-large-content__highlight').text
div_body = soup.find('div', 'body-copy')
body = [x.text for x in div_body.findAll('p')]
date_str = soup.find('time', 'article-timestamp')['datetime']
date_str = date_str.split('T')[0]
date = datetime.strptime(date_str, '%Y-%m-%d')
return {'title': title, 'body': body, 'date': date, 'url': url}
Ruslan
return выглядит страшно, я вот подумал, можно ли упростить
Timur
поюзай nameddict или namedtuple
Danil
ну дак
def get_aricles(url):
html = get_html(url)
soup = BeautifulSoup(html, 'html.parser')
title = soup.find('span', 'lede-large-content__highlight').text
div_body = soup.find('div', 'body-copy')
body = [x.text for x in div_body.findAll('p')]
date_str = soup.find('time', 'article-timestamp')['datetime']
date_str = date_str.split('T')[0]
date = datetime.strptime(date_str, '%Y-%m-%d')
return {k,v for k,v in locals().items() if k in ['title', 'body', 'data', 'url']}
но помни явное лучше неявного
Timur
смотря как потом дальше оно тебе нужно будет
Timur
get_aricles - get_articles наверное?
Timur
то есть у тебя объект статьи какой-то возвращается - если он просто DTO без поведения, то можно namedtuple заюзать, будет типа структура
Timur
если поведение есть - то лучше класс
Ruslan
кто-то с монго дружит, нужна помощь
Ruslan
как подключаться безопасно к mongodb
открыл порт у монги, включил авторизацию
# Turn on/off security. Off is currently the default
#noauth = true
auth = true
но все равно я могу подключиться без авторизации. Кроме ssh тунеля есть какие-нибудь варианты
Tony
а Selenium это про python, да?
Ruslan
я знаю что requests умеет proxy
Ruslan
а без селениума никак не обойтись?
Ruslan
меня тут сайт забанил, за то, что я парсить все подряд начал. Сейчас через прокси хожу.
Vladimir
Интересно что будет, если создать сайт, и заделать его под гугл, чтобы он использовал движок гугла, но выпиливал бы оттуда рекламные обьявления, а потом сделать свой аналог adwords и срубать бабла за свою рекламу.
Vladimir
как думаете, гугл не будет против такого?
Vladimir
Ruslan
Vladimir
да, именно
Ruslan
а есть канал по mongodb в телеграмм?
Tony
Tony
а самому 5 букв в поиск вбить религия не позволяет?
Tony
Ruslan
Tony
Влад
https://google.gik-team.com/?q=selenium+proxy+python
Nickolai
Hallo
https://github.com/GeneralMills/pytrends/blob/master/pytrends/request.py#L26
Смотрю тут псевдо апиху на питоне для google трендов и никак не могу понять как можно генерить url с разными типо параметрами geo, date за последние 2 часа только один нормальный url работает
https://trends.google.com/trends/api/autocomplete/&q=pizza
хотелось бы с несколькими параметрами, работал кто-нибудь с ней?
Timur
sad story
Anonymous
всем привет
Anonymous
from urllib.request import urlopen
f = open("f.txt")
for line in f:
try:
urlopen(line)
print(line,"excellent!")
with open("exc.txt", "w+") as file:
file.write(line)
except:
print(line,"fuck!")
Anonymous
код поверяет работают ли ссылки мои, а вот работающие в exc не записывает
Anonymous
подскажите в чем проблема пожалуйста
Anonymous
записывает только последнюю ссылку
Anonymous
потому что наверное надо writeline делать а не write
Рустам
Рустам
сначала один раз открой файл, а потом в цикле пиши то что нужно
Рустам
Ну или для каждой ссылки свой файл создавай
Рустам
или файл открывай с флагом "a"
Anonymous
Anonymous
всем доброго дня!подскажите ссылочку на вакансии python
Anonymous
спасибо!
Anonymous
ВСЕМ ПРИВЕТ.
Подскажите как рисовать в Пайтоне.на подобии в паскалевского графического модуля:
Anonymous
Qt?Tkinet?Черепашка?
Vladimir
народ, подскажите geonames это лучшее что есть?
Vladimir
и игрался ли кто с этим? отзывы есть? https://pypi.python.org/pypi/geograpy
Vladimir
Welcome
Vladimir
https://pypi.python.org/pypi/geolocation-python/0.2.0
а это кто-нибудь юзал?
Vladimir
Welcome
Anonymous
Здраствуйте
Anonymous
Может кто помочь как перменной задать количество дней при помощи модуля datetime вродел прочитал, но так и не понял нужно чтобы к дате прибавлялись дни
Anonymous
time.delta(days=1)
Anonymous
your_datetime_date + datetime.delta(days=1)
Vladimir
Здраствуйте
здравствуйте), бывает такое, вроде простая вещь, а приходится покопаться
Anton
задавай вопрос
Anton
функции - точно такие же объекты, как и всё остальное. декоратор это функция, которая принимает в качестве аргумента функцию и возвращает функцию
Anton
она передаётся как аргумент
Anton
это просто сахар синтаксический
Anton
синтаксис
Anton
причём что важно - вызван декоратор будет в момент импорта модуля
Anton
@имя перед определением функции это и есть ВЫЗОВ декоратора
Anton
аргумент - функция которая следует за ним
Vladimir
вот у меня кстати вопрос, как правильнее расчленить программу,? где про это прочитать?
Anton
да
Anton
Anton
я тут просто мимо крокодил, но пишите - думаю найдутся помощники. ;)
Ruslan
В декораторе
@foo
def bar():
pass@foo - это директива, условность, указание интерпретатору пропустить вызываемую функцию через foo
Anton
и ещё совет: читайте код. много кода. популярные библиотеки, фреймворки и тп. разберитесь как устроен фласк или клик, реквестс. популярные библиотеки популярны именно потому, что хорошо написаны (не всегда, конечно)