<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Yandex Metrika Python 3 - Python 3 | Data Science | Нейронные сети | AI - Искусственный Интеллект</title>
	<atom:link href="https://python.ivan-shamaev.ru/tag/yandex-metrika-python-3/feed/" rel="self" type="application/rss+xml" />
	<link>https://python.ivan-shamaev.ru/tag/yandex-metrika-python-3/</link>
	<description>Библиотеки обработки данных. Примеры. Строки, списки, файлы, числа, массивы. Язык программирования Python 3 - скачать</description>
	<lastBuildDate>Tue, 09 Jun 2020 21:10:16 +0000</lastBuildDate>
	<language>ru-RU</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.6.2</generator>

<image>
	<url>https://python.ivan-shamaev.ru/wp-content/uploads/2019/04/cropped-data_science_python3_logo-32x32.png</url>
	<title>Yandex Metrika Python 3 - Python 3 | Data Science | Нейронные сети | AI - Искусственный Интеллект</title>
	<link>https://python.ivan-shamaev.ru/tag/yandex-metrika-python-3/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Как выгрузить данные из Yandex Metrika с помощью Python?</title>
		<link>https://python.ivan-shamaev.ru/extract-data-from-yandex-metric-using-python/</link>
					<comments>https://python.ivan-shamaev.ru/extract-data-from-yandex-metric-using-python/#comments</comments>
		
		<dc:creator><![CDATA[Шамаев Иван]]></dc:creator>
		<pubDate>Wed, 19 Feb 2020 21:32:31 +0000</pubDate>
				<category><![CDATA[Работа с API. Выгрузка данных. Подключение к источникам]]></category>
		<category><![CDATA[Yandex Metrika]]></category>
		<category><![CDATA[Yandex Metrika DataLabs]]></category>
		<category><![CDATA[Yandex Metrika Extract Data]]></category>
		<category><![CDATA[Yandex Metrika Python 3]]></category>
		<category><![CDATA[Yandex Metrika Аналитика]]></category>
		<guid isPermaLink="false">https://python.ivan-shamaev.ru/?p=612</guid>

					<description><![CDATA[<p>Начало работы с Yandex Metrika API В работе с любыми API первым шагом является получение токена. Затем нужно понять как формировать запросы. Плюс необходимо узнать какие форматы данных может возвращать API &#8212; обычно это JSON, CSV (TXT). Вся документация Yandex Metrika API обычно очень быстро гуглится &#8212; https://yandex.ru/dev/metrika/. Я пройдусь от получения токена до получения [&#8230;]</p>
<p>Сообщение <a href="https://python.ivan-shamaev.ru/extract-data-from-yandex-metric-using-python/">Как выгрузить данные из Yandex Metrika с помощью Python?</a> появились сначала на <a href="https://python.ivan-shamaev.ru">Python 3 | Data Science | Нейронные сети | AI - Искусственный Интеллект</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><a class="a2a_button_telegram" href="https://www.addtoany.com/add_to/telegram?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fextract-data-from-yandex-metric-using-python%2F&amp;linkname=%D0%9A%D0%B0%D0%BA%20%D0%B2%D1%8B%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5%20%D0%B8%D0%B7%20Yandex%20Metrika%20%D1%81%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E%20Python%3F" title="Telegram" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_whatsapp" href="https://www.addtoany.com/add_to/whatsapp?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fextract-data-from-yandex-metric-using-python%2F&amp;linkname=%D0%9A%D0%B0%D0%BA%20%D0%B2%D1%8B%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5%20%D0%B8%D0%B7%20Yandex%20Metrika%20%D1%81%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E%20Python%3F" title="WhatsApp" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_facebook" href="https://www.addtoany.com/add_to/facebook?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fextract-data-from-yandex-metric-using-python%2F&amp;linkname=%D0%9A%D0%B0%D0%BA%20%D0%B2%D1%8B%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5%20%D0%B8%D0%B7%20Yandex%20Metrika%20%D1%81%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E%20Python%3F" title="Facebook" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_linkedin" href="https://www.addtoany.com/add_to/linkedin?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fextract-data-from-yandex-metric-using-python%2F&amp;linkname=%D0%9A%D0%B0%D0%BA%20%D0%B2%D1%8B%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5%20%D0%B8%D0%B7%20Yandex%20Metrika%20%D1%81%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E%20Python%3F" title="LinkedIn" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_vk" href="https://www.addtoany.com/add_to/vk?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fextract-data-from-yandex-metric-using-python%2F&amp;linkname=%D0%9A%D0%B0%D0%BA%20%D0%B2%D1%8B%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5%20%D0%B8%D0%B7%20Yandex%20Metrika%20%D1%81%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E%20Python%3F" title="VK" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_twitter" href="https://www.addtoany.com/add_to/twitter?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fextract-data-from-yandex-metric-using-python%2F&amp;linkname=%D0%9A%D0%B0%D0%BA%20%D0%B2%D1%8B%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5%20%D0%B8%D0%B7%20Yandex%20Metrika%20%D1%81%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E%20Python%3F" title="Twitter" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_email" href="https://www.addtoany.com/add_to/email?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fextract-data-from-yandex-metric-using-python%2F&amp;linkname=%D0%9A%D0%B0%D0%BA%20%D0%B2%D1%8B%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5%20%D0%B8%D0%B7%20Yandex%20Metrika%20%D1%81%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E%20Python%3F" title="Email" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fextract-data-from-yandex-metric-using-python%2F&#038;title=%D0%9A%D0%B0%D0%BA%20%D0%B2%D1%8B%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5%20%D0%B8%D0%B7%20Yandex%20Metrika%20%D1%81%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E%20Python%3F" data-a2a-url="https://python.ivan-shamaev.ru/extract-data-from-yandex-metric-using-python/" data-a2a-title="Как выгрузить данные из Yandex Metrika с помощью Python?"></a></p><h2><strong>Начало работы с Yandex Metrika API</strong></h2>
<p>В работе с любыми API первым шагом является получение токена. Затем нужно понять как формировать запросы. Плюс необходимо узнать какие форматы данных может возвращать API &#8212; обычно это JSON, CSV (TXT).</p>
<p>Вся документация Yandex Metrika API обычно очень быстро гуглится &#8212; <strong><a href="https://yandex.ru/dev/metrika/" target="_blank" rel="noopener noreferrer">https://yandex.ru/dev/metrika/</a>.</strong></p>
<p>Я пройдусь от получения токена до получения выгруженных данных из Yandex.Metrika.</p>
<h3><strong>Yandex Token Для яндекс метрики</strong></h3>
<p>Итак, в соответствии с инструкцией регистрируем приложение по ссылке <strong><a href="https://oauth.yandex.ru/client/new" target="_blank" rel="noopener noreferrer">https://oauth.yandex.ru/client/new</a>. </strong>Ссылка может поменяться, так что если что гуглите.</p>
<p><strong>Указываем название приложения, делаем описание.</strong></p>
<p><a href="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/1_yandex_app_token.png"><img fetchpriority="high" decoding="async" src="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/1_yandex_app_token.png" alt="" width="989" height="542" class="aligncenter size-full wp-image-615" srcset="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/1_yandex_app_token.png 989w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/1_yandex_app_token-300x164.png 300w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/1_yandex_app_token-768x421.png 768w" sizes="(max-width: 989px) 100vw, 989px" /></a></p>
<p>В поле Callback URL вбиваем https://oauth.yandex.ru/verification_code</p>
<p><a href="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/2_1_url_site.png"><img decoding="async" src="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/2_1_url_site.png" alt="" width="732" height="372" class="aligncenter size-full wp-image-621" srcset="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/2_1_url_site.png 732w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/2_1_url_site-300x152.png 300w" sizes="(max-width: 732px) 100vw, 732px" /></a></p>
<p><strong>Указываете в разделе Yandex.Metrika, что выдать доступ для получения статистики.</strong></p>
<p><a href="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/2_yandex_metrika_get_statistik.png"><img decoding="async" src="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/2_yandex_metrika_get_statistik.png" alt="" width="751" height="152" class="aligncenter size-full wp-image-616" srcset="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/2_yandex_metrika_get_statistik.png 751w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/2_yandex_metrika_get_statistik-300x61.png 300w" sizes="(max-width: 751px) 100vw, 751px" /></a></p>
<p><strong>Создаете приложение</strong></p>
<p><a href="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/3_create_app.png"><img decoding="async" src="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/3_create_app.png" alt="" width="656" height="180" class="aligncenter size-full wp-image-617" srcset="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/3_create_app.png 656w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/3_create_app-300x82.png 300w" sizes="(max-width: 656px) 100vw, 656px" /></a></p>
<p>Яндекс выдаст Вам ID и Пароль. Можете не запоминать их, всегда можно найти в списке созданных приложений &#8212; <strong><a href="https://oauth.yandex.ru/" target="_blank" rel="noopener noreferrer">https://oauth.yandex.ru/</a></strong></p>
<p><a href="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/4_ID_Password_callback_URL_3.png"><img decoding="async" src="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/4_ID_Password_callback_URL_3.png" alt="" width="635" height="316" class="aligncenter size-full wp-image-627" srcset="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/4_ID_Password_callback_URL_3.png 635w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/4_ID_Password_callback_URL_3-300x149.png 300w" sizes="(max-width: 635px) 100vw, 635px" /></a></p>
<p>Берем ссылку</p>
<pre class="EnlighterJSRAW" data-enlighter-language="null">https://oauth.yandex.ru/authorize?response_type=token&amp;client_id=&lt;идентификатор приложения&gt;</pre>
<p>Подставляем &lt;идентификатор приложения&gt; &#8212; это полученный ID. Вбиваем в URL в браузере. У меня получилась такая вот ссылка:</p>
<pre class="EnlighterJSRAW" data-enlighter-language="null">https://oauth.yandex.ru/authorize?response_type=token&amp;client_id=14b9e156de754901b9f321f53746092b</pre>
<p>Дальше появляется запрос на предоставление доступа</p>
<p><a href="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/5_yandex_metrika_token.png"><img decoding="async" src="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/5_yandex_metrika_token.png" alt="" width="695" height="253" class="aligncenter size-full wp-image-624" srcset="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/5_yandex_metrika_token.png 695w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/5_yandex_metrika_token-300x109.png 300w" sizes="(max-width: 695px) 100vw, 695px" /></a></p>
<p><strong>Далее подтверждаем. Яндекс выдаст нам наш токен для доступа к статистике:</strong></p>
<p><a href="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/6_our_token_yandex_metrika_api.png"><img decoding="async" src="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/6_our_token_yandex_metrika_api.png" alt="" width="1037" height="227" class="aligncenter size-full wp-image-625" srcset="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/6_our_token_yandex_metrika_api.png 1037w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/6_our_token_yandex_metrika_api-300x66.png 300w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/6_our_token_yandex_metrika_api-1024x224.png 1024w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/6_our_token_yandex_metrika_api-768x168.png 768w" sizes="(max-width: 1037px) 100vw, 1037px" /></a></p>
<h3>Наш токен</h3>
<p>Запоминаем, никому не передаем, храним в укромном уголке на компьютере или в почте <img src="https://s.w.org/images/core/emoji/15.0.3/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<pre class="EnlighterJSRAW" data-enlighter-language="null">AgAAAAAJ8KAaAAYl4OT0R-7vKU3IkJuf0A0lN5M</pre>
<h3><b>Ставим библиотеку tapi-yandex-metrika</b><a href="https://github.com/pikhovkin/yametrikapy" target="_blank" rel="noopener noreferrer"></a></h3>
<p><a href="https://github.com/pavelmaksimov/tapi-yandex-metrika" target="_blank" rel="noopener noreferrer"><strong>https://github.com/pavelmaksimov/tapi-yandex-metrika</strong></a></p>
<pre class="EnlighterJSRAW" data-enlighter-language="null">pip install pyOpenSSL</pre>
<pre class="EnlighterJSRAW" data-enlighter-language="null">pip install tapi-yandex-metrika</pre>
<p><strong>Пример запроса (поменяйте TOKEN и IDS счетчика)</strong></p>
<pre class="EnlighterJSRAW" data-enlighter-language="python">from tapi_yandex_metrika import YandexMetrikaStats

ACCESS_TOKEN = "AgAAAAAJ8KAaAAYl4OT0R-7vKU3IkJuf0A0lN5M"

# По умолчанию возвращаются только 10000 строк отчета, 
# если не указать другое кол-во в параметре limit.
# В отчете может быть больше строк, чем указано в limit 
# Тогда необходимо сделать несколько запросов для получения всего отчета.
# Чтоб сделать это автоматически вы можете указать 
# параметр receive_all_data=True при инициализации класса.

api = YandexMetrikaStats(
    access_token=ACCESS_TOKEN, 
    # Если True, будет скачивать все части отчета. По умолчанию False.
    receive_all_data=True
)
params = dict(
    ids="18197662",
    metrics="ym:s:visits,ym:s:bounces",
    dimensions="ym:s:date,ym:s:startOfMonth",
    sort="ym:s:date",
    limit=10
)
result = api.stats().get(params=params)
print(result().data)</pre>
<h3>Получение данных из Yandex.Metrika API с помощью библиотеки tapi_yandex_metrika и выгрузка данных в Excel через Pandas DataFrame</h3>
<p>Ниже будет представлен пример получения данных из Yandex.Metrika API с последующим сохранением массива данных в Excel.</p>
<pre class="EnlighterJSRAW" data-enlighter-language="python">from tapi_yandex_metrika import YandexMetrikaStats
import json
import pandas as pd

ACCESS_TOKEN = "AgAAdsf4fffaAAYl4OT0R-7vKU3IkJuf0A0lN5M"
METRIC_IDS = "54333315"

# По умолчанию возвращаются только 10000 строк отчета, 
# если не указать другое кол-во в параметре limit.
# В отчете может быть больше строк, чем указано в limit 
# Тогда необходимо сделать несколько запросов для получения всего отчета.
# Чтоб сделать это автоматически вы можете указать 
# параметр receive_all_data=True при инициализации класса.

#Параметры запроса для библиотеки tapi_yandex_metrika
api = YandexMetrikaStats(
    access_token=ACCESS_TOKEN, 
    # Если True, будет скачивать все части отчета. По умолчанию False.
    receive_all_data=True
)

#Параметры запроса для библиотеки tapi_yandex_metrika
params = dict(
    ids = METRIC_IDS,
    metrics = "ym:s:users,ym:s:visits,ym:s:pageviews,ym:s:bounceRate,ym:s:pageDepth,ym:s:avgVisitDurationSeconds",
    dimensions = "ym:s:date,ym:s:&lt;attribution&gt;TrafficSource,ym:s:&lt;attribution&gt;SourceEngine,ym:s:gender",
    date1 = "2daysAgo",
    date2 = "yesterday",
    sort = "ym:s:date",
    accuracy="full",
    limit = 200
)
#Получаем данные из Yandex.Metrika API
result = api.stats().get(params=params)
result = result().data
result = result[0]['data']

#Создаем пустой dict (словать данных)
dict_data = {}

#Парсим исходный list формата Json в dictionary (словарь данных)
for i in range(0, len(result)-1):
    dict_data[i] = {
            'date':result[i]["dimensions"][0]["name"],
            'traffic-source':result[i]["dimensions"][1]["name"],
            'traffic-details':result[i]["dimensions"][2]["name"],
            'users':result[i]["metrics"][0],
            'visits':result[i]["metrics"][1],
            'pageviews':result[i]["metrics"][2],
            'bounceRate':result[i]["metrics"][3],
            'pageDepth':result[i]["metrics"][4],
            'avgVisitDurationSeconds':result[i]["metrics"][5]
          }

#Создаем DataFrame из dict (словаря данных или массива данных)
dict_keys = dict_data[0].keys()
df = pd.DataFrame.from_dict(dict_data, orient='index',columns=dict_keys)

#Выгрузка данных из DataFrame в Excel
df.to_excel("Трафик.xlsx",
        sheet_name='data',
        index=False)</pre>
<p>Получается вот такого вида Excel (некоторые значения удалил):</p>
<p><a href="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/yandex_metrika_api_data_extract_pandas_dataframe_to_excel.png"><img decoding="async" src="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/yandex_metrika_api_data_extract_pandas_dataframe_to_excel.png" alt="" width="893" height="525" class="aligncenter size-full wp-image-897" srcset="https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/yandex_metrika_api_data_extract_pandas_dataframe_to_excel.png 893w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/yandex_metrika_api_data_extract_pandas_dataframe_to_excel-300x176.png 300w, https://python.ivan-shamaev.ru/wp-content/uploads/2020/02/yandex_metrika_api_data_extract_pandas_dataframe_to_excel-768x452.png 768w" sizes="(max-width: 893px) 100vw, 893px" /></a></p>
<h3><strong>Пример выгрузки данных из API Яндекс Метрики с помощью библиотеки Requests</strong></h3>
<p>Пусть у нас будет файл params.json</p>
<pre class="EnlighterJSRAW" data-enlighter-language="json">{"ACCESS_TOKEN": "AOUHOHOI89h9uohaAAZB-rXh-t-olkj98yhIII",
"METRIC_IDS": {
    "site1.ru":"2342315",
    "site2.ru":"136443462",
    "site3.ru":"46465917"},
"PATH": "D:\\PythonETL\\Data\\0_Raw_Data\\YandexMetrika\\"}</pre>
<p>Далее рассмотрим пример выгрузки данных по трафику по дням за последний год &#8212; файл <strong>1_Трафик.py</strong></p>
<pre class="EnlighterJSRAW" data-enlighter-language="python"># Импортируем библиотеку requests 
import requests
import json
import pandas as pd
import sys 
from datetime import datetime
from dateutil.relativedelta import relativedelta

# Загружаем параметры из json
config_variables = json.load(open('params.json'))

# Устанавливаем переменные
locals().update(config_variables)

# Вычисляем дату начала и дату окончания
DayStart = datetime.today() + relativedelta(years=-1)
DayStart = DayStart.strftime('%Y-%m-%d')
DayEnd = datetime.today().strftime('%Y-%m-%d')

# Адрес api метода для запроса get 
url_param = "https://api-metrika.yandex.net/stat/v1/data"

def get_data_to_excel(api_param,header_params,file_name):
        # Отправляем get request (запрос GET)
        response = requests.get(
            url_param,
            params=api_param,
            headers=header_params
        )

        # Преобразуем response с помощью json()
        result = response.json()
        result = result['data']

        # Создаем пустой dict (словать данных)
        dict_data = {}

        # Парсим исходный list формата Json в dictionary (словарь данных)
        for i in range(0, len(result)-1):
                dict_data[i] = {
                                'date':result[i]["dimensions"][0]["name"],
                                'traffic-source':result[i]["dimensions"][1]["name"],
                                'traffic-details':result[i]["dimensions"][2]["name"],
                                'users':result[i]["metrics"][0],
                                'visits':result[i]["metrics"][1],
                                'pageviews':result[i]["metrics"][2],
                                'bounceRate':result[i]["metrics"][3],
                                'pageDepth':result[i]["metrics"][4],
                                'avgVisitDurationSeconds':result[i]["metrics"][5]
                          }

        #Создаем DataFrame из dict (словаря данных или массива данных)
        dict_keys = dict_data[0].keys()
        df = pd.DataFrame.from_dict(dict_data, orient='index',columns=dict_keys)

        #Выгрузка данных из DataFrame в Excel
        df.to_excel(file_name,sheet_name='data',index=False)

for (site_name,metric_id) in METRIC_IDS.items():
        print("site_name: " + site_name)
        
        # Задаем параметры для API
        api_param = {
            "ids":metric_id,
            "metrics":"ym:s:users,ym:s:visits,ym:s:pageviews,ym:s:bounceRate,ym:s:pageDepth,ym:s:avgVisitDurationSeconds",
            "dimensions":"ym:s:date,ym:s:&lt;attribution&gt;TrafficSource,ym:s:&lt;attribution&gt;SourceEngine",
            "date1":DayStart,
            "date2":DayEnd,
            "sort":"ym:s:date",
            "accuracy":"full",
            "limit":100000
            }

        # Задаем параметры header_params
        header_params = {
            'GET': '/management/v1/counters HTTP/1.1',
            'Host': 'api-metrika.yandex.net',
            'Authorization': 'OAuth ' + ACCESS_TOKEN,
            'Content-Type': 'application/x-yametrika+json'
            }

        # Название файла Excel
        file_name = PATH + metric_id +"_Трафик.xlsx"

        # Вызываем функцию
        get_data_to_excel(api_param,header_params,file_name)</pre>
<p>И для запуска из-под Windows создаем батник &#8212; <strong>0_Run_All_Scripts.cmd</strong>. В этот файл друг за дружкой можно вписать несколько скриптов и затем cmd файл внести в <strong>Windows Sheduler</strong> для выгрузки по расписанию.</p>
<pre class="EnlighterJSRAW" data-enlighter-language="shell">chcp 1251
"C:\Users\User\AppData\Local\Programs\Python\Python37-32\python.exe" "D:\PythonETL\Scripts\0_Extract\YandexMetrika\1_Трафик.py"</pre>
<p><a class="a2a_button_telegram" href="https://www.addtoany.com/add_to/telegram?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fextract-data-from-yandex-metric-using-python%2F&amp;linkname=%D0%9A%D0%B0%D0%BA%20%D0%B2%D1%8B%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5%20%D0%B8%D0%B7%20Yandex%20Metrika%20%D1%81%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E%20Python%3F" title="Telegram" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_whatsapp" href="https://www.addtoany.com/add_to/whatsapp?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fextract-data-from-yandex-metric-using-python%2F&amp;linkname=%D0%9A%D0%B0%D0%BA%20%D0%B2%D1%8B%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5%20%D0%B8%D0%B7%20Yandex%20Metrika%20%D1%81%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E%20Python%3F" title="WhatsApp" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_facebook" href="https://www.addtoany.com/add_to/facebook?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fextract-data-from-yandex-metric-using-python%2F&amp;linkname=%D0%9A%D0%B0%D0%BA%20%D0%B2%D1%8B%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5%20%D0%B8%D0%B7%20Yandex%20Metrika%20%D1%81%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E%20Python%3F" title="Facebook" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_linkedin" href="https://www.addtoany.com/add_to/linkedin?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fextract-data-from-yandex-metric-using-python%2F&amp;linkname=%D0%9A%D0%B0%D0%BA%20%D0%B2%D1%8B%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5%20%D0%B8%D0%B7%20Yandex%20Metrika%20%D1%81%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E%20Python%3F" title="LinkedIn" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_vk" href="https://www.addtoany.com/add_to/vk?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fextract-data-from-yandex-metric-using-python%2F&amp;linkname=%D0%9A%D0%B0%D0%BA%20%D0%B2%D1%8B%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5%20%D0%B8%D0%B7%20Yandex%20Metrika%20%D1%81%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E%20Python%3F" title="VK" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_twitter" href="https://www.addtoany.com/add_to/twitter?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fextract-data-from-yandex-metric-using-python%2F&amp;linkname=%D0%9A%D0%B0%D0%BA%20%D0%B2%D1%8B%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5%20%D0%B8%D0%B7%20Yandex%20Metrika%20%D1%81%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E%20Python%3F" title="Twitter" rel="nofollow noopener" target="_blank"></a><a class="a2a_button_email" href="https://www.addtoany.com/add_to/email?linkurl=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fextract-data-from-yandex-metric-using-python%2F&amp;linkname=%D0%9A%D0%B0%D0%BA%20%D0%B2%D1%8B%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5%20%D0%B8%D0%B7%20Yandex%20Metrika%20%D1%81%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E%20Python%3F" title="Email" rel="nofollow noopener" target="_blank"></a><a class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Fpython.ivan-shamaev.ru%2Fextract-data-from-yandex-metric-using-python%2F&#038;title=%D0%9A%D0%B0%D0%BA%20%D0%B2%D1%8B%D0%B3%D1%80%D1%83%D0%B7%D0%B8%D1%82%D1%8C%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5%20%D0%B8%D0%B7%20Yandex%20Metrika%20%D1%81%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E%20Python%3F" data-a2a-url="https://python.ivan-shamaev.ru/extract-data-from-yandex-metric-using-python/" data-a2a-title="Как выгрузить данные из Yandex Metrika с помощью Python?"></a></p><p>Сообщение <a href="https://python.ivan-shamaev.ru/extract-data-from-yandex-metric-using-python/">Как выгрузить данные из Yandex Metrika с помощью Python?</a> появились сначала на <a href="https://python.ivan-shamaev.ru">Python 3 | Data Science | Нейронные сети | AI - Искусственный Интеллект</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://python.ivan-shamaev.ru/extract-data-from-yandex-metric-using-python/feed/</wfw:commentRss>
			<slash:comments>11</slash:comments>
		
		
			</item>
	</channel>
</rss>
