• Можно ли использовать Google Drive, как облачную базу данных для Android-приложения?

    @rPman
    Почему народ с самого начала разработки приложения так стремится привязать себя к дорогому сервису. Т.е. вы уже с самого начала разработки готовы платить на порядок больше чем могли бы.

    Неужели вам сложно поднять key-value базу данных и написать (читай скопировать и туториала) простейшую прослойку с авторизацией по токенам? Слабая VPS-ка, способная потянуть нехилый проект, обойдется вам примерно в $1 в месяц, без гарантий, и от $15 с гарантиями (а за 40 можете получить уже не виртуальное железо).

    Организуйте сервис изначально так, чтобы использовать свой собственный сервер (или несколько), а в случае его недоступности (или недостатка ресурсов), автоматически переключайтесь на облачные технологии, а точнее автоматическое развертывание новых мощностей на базе того же google/amazon/azure (только у них можно оплата по часам и поднять новую vps за секунды).
    Ответ написан
    Комментировать
  • Как использовать метод activity или fragment'a в BroadcastReceiver?

    zagayevskiy
    @zagayevskiy Куратор тега Android
    Android developer at Yandex
    У ресивера и активити(и тем более фрагмента) абсолютно разные, непересекающиеся жизненные циклы.
    Сделать то, что ты хочешь, можно разными способами. Если нужно показать UI, и что-то сделать в нём, нужно создавать PendingIntent для активити, и, соответственно, стартовать непосредственно её.

    С помощью ресивера сделать тоже можно, непонятно только, почему "хранилище" у тебя привязано к активити. В ресивере непосредственно(или стартовав из него сервис, или запланировав джобу в WorkManager, зависит от) можно достучаться до "хранилища" и изменить в нем данные.
    Ответ написан
    4 комментария
  • Конвертация Android-приложения в сайт. Существуют ли инструменты?

    GavriKos
    @GavriKos
    Вряд ли.
    В "конвертировании" сайта в apk там используется маленькая хитрость - по сути приложение отображает и выполняет код сайта через встроенный веб-браузер. Т.е. код сайта на самом деле почти не меняется.
    А вот обратного механизма а-ля "среда запуска apk на javascript" я что то не припомню, поэтому такая конвертация весьма затруднена. К тому же непонятно как разделить на бек и фронт в таком случае.
    Ответ написан
    Комментировать
  • Можно ли на Python написать веб-приложение-парсер?

    Ranc58
    @Ranc58
    Backend python developer
    Bs4/scrapy + sqlite/postgres/другая бд + flask/django.
    Не самый лучший пример, но сама логика варианта без БД с кэшированием: https://github.com/Ranc58/25_cinemas_site
    Ответ написан
    Комментировать
  • Можно ли на Python написать веб-приложение-парсер?

    @Trahibidadido
    Backend/DevOps
    Вполне. Берем связку bs4+requests, для быстроты разработки вебморды - Django, делаем нужные модели, пишем сам парсер, оборачиваем как Django команду, вызываем во вьюхе -> done. Но тут возникает множество возможного гемороя + обязательное кеширование.

    Так что куда лучше сделать отдельно парсер, который будет писать данные в БД, а отдельно вывод этих данных в принципе на чем угодно.
    Ответ написан
    Комментировать
  • Можно ли на Python написать веб-приложение-парсер?

    @asd111
    Курсы валют не нужно парсить. Для этого есть API центробанка www.cbr.ru/scripts/Root.asp?PrtId=SXML
    Ответ написан
    Комментировать
  • Можно ли на Python написать веб-приложение-парсер?

    delvin-fil
    @delvin-fil
    Crazy Linux-admin
    Как пример. Вывод текущего курса доллара.
    #!/usr/bin/env python3.6
    # -*- coding: utf-8 -*-
    import requests, re
    from xml.dom.minidom import parseString
    
    headers = {
        'User-Agent': ('Mozilla/5.0 (Windows NT 6.0; rv:14.0) Gecko/20100101 '
                       'Firefox/14.0.1'),
        'Accept':
        'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
        'Accept-Language':
        'ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3',
        'Accept-Encoding':
        'gzip, deflate',
        'Connection':
        'keep-alive',
        'DNT':
        '1'
    }
    
    page = requests.get(
        'http://www.cbr.ru/scripts/XML_daily.asp', headers=headers).text
    xmldoc = parseString(page)
    usd = xmldoc.getElementsByTagName('Value')[10]
    usd = usd.firstChild.nodeValue
    print (usd)
    Ответ написан
    Комментировать