Задать вопрос
Ответы пользователя по тегу Python
  • Многопоточность в python?

    kovalenko_jul_s
    @kovalenko_jul_s Автор вопроса
    import asyncio
    import requests
    from mysql import MySql
    import concurrent.futures
    
    def get_data(id):
        mysql = MySql()
    
        while True:
            resp = requests.get("http://site.ru/path?id=" + id)
            mysql.insert_data(resp)
    
        return 1
    
    
    async def main():
        with concurrent.futures.ThreadPoolExecutor(max_workers=20) as executor:
            ids = [1,2,3,4,5, ... , N];
    
            loop = asyncio.get_event_loop()
            futures = [
                loop.run_in_executor(
                    executor, 
                    get_data, 
                    id
                )
                for id in ids
            ]
            for response in await asyncio.gather(*futures):
                pass
    
    
    loop = asyncio.get_event_loop()
    loop.run_until_complete(main())
    Ответ написан
    2 комментария
  • Как делать запросы к mysql на python3.5?

    kovalenko_jul_s
    @kovalenko_jul_s Автор вопроса
    Свою проблему я решила с помощью MySQLdb.

    1. Распарсила json-файл в двумерный список
    values = [[a1,a2,...], [b1, b2,...], ....]
    2. Сформировала строку запроса
    query = "INSERT INTO ads_irr_ru_content (col1, col2, .... ,col5) VALUES "  + 
        ",".join("(%s,%s,%s,%s,%s)" for _ in values)

    3. Собрала вставляемые данные
    flattened_values = [item for sublist in values for item in sublist]

    4. Вставила данные:)
    cur.execute(query, flattened_values)
    Ответ написан
    Комментировать