Problem Parallel Download

141 views
Skip to first unread message

sant...@madketing.com.ar

unread,
Mar 29, 2018, 8:34:13 AM3/29/18
to AdWords API Forum
Hi! I'm trying to use the file "parallel_report_download.py" to generate a report, but I get an error that I can not fix. I already try the directory where I want it to be downloaded from the source code, and from the python console using an "input", but it does not work in any way. The other sample scripts work perfectly.

Thank you

C:\Users\Lucia\AppData\Local\Programs\Python\Python36-32\python.exe C:/Users/Lucia/adwords_python3_examples_10.0.0/v201710/reporting/parallel_report_download.py
Ingrese el directorio donde descargar el reporte: C:\Users\Lucia\Desktop\API Adwords\Archivos
WARNING:googleads.common:Your default encoding, cp1252, is not UTF-8. Please run this script with UTF-8 encoding to avoid errors.
INFO:oauth2client.client:Refreshing access_token
INFO:googleads.common:Request summary - {'methodName': get, 'clientCustomerId': 406-736-8627}
DEBUG:suds.transport.http:sending:
HEADERS: {'Content-Type': 'text/xml; charset=utf-8', 'SOAPAction': b'""', 'Authorization': 'REDACTED', 'Content-type': 'text/xml; charset=utf-8', 'Soapaction': b'""'}
MESSAGE:
<?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="https://adwords.google.com/api/adwords/mcm/v201710" xmlns:ns0="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="https://adwords.google.com/api/adwords/mcm/v201710" xmlns:ns2="https://adwords.google.com/api/adwords/cm/v201710"><SOAP-ENV:Header><tns:RequestHeader><tns:clientCustomerId xmlns:tns="https://adwords.google.com/api/adwords/cm/v201710">406-736-8627</tns:clientCustomerId><tns:developerToken xmlns:tns="https://adwords.google.com/api/adwords/cm/v201710">S9C7Q0OG-a_0ol-C5a19cA</tns:developerToken><tns:userAgent xmlns:tns="https://adwords.google.com/api/adwords/cm/v201710">unknown (AwApi-Python, googleads/9.0.0, Python/3.6.2)</tns:userAgent><tns:validateOnly xmlns:tns="https://adwords.google.com/api/adwords/cm/v201710">false</tns:validateOnly><tns:partialFailure xmlns:tns="https://adwords.google.com/api/adwords/cm/v201710">false</tns:partialFailure></tns:RequestHeader></SOAP-ENV:Header><ns0:Body><ns1:get><ns1:serviceSelector><ns2:fields>CustomerId</ns2:fields><ns2:predicates><ns2:field>CanManageClients</ns2:field><ns2:operator>EQUALS</ns2:operator><ns2:values>False</ns2:values></ns2:predicates><ns2:paging><ns2:startIndex>0</ns2:startIndex><ns2:numberResults>100</ns2:numberResults></ns2:paging></ns1:serviceSelector></ns1:get></ns0:Body></SOAP-ENV:Envelope>
DEBUG:suds.transport.http:received:
CODE: 200
HEADERS: Content-Type: text/xml; charset=UTF-8
Date: Thu, 29 Mar 2018 12:33:55 GMT
Expires: Thu, 29 Mar 2018 12:33:55 GMT
Cache-Control: private, max-age=0
X-Content-Type-Options: nosniff
X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
Server: GSE
Alt-Svc: hq=":443"; ma=2592000; quic=51303432; quic=51303431; quic=51303339; quic=51303335,quic=":443"; ma=2592000; v="42,41,39,35"
Accept-Ranges: none
Vary: Accept-Encoding
Connection: close


MESSAGE:
b'<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Header><ns2:ResponseHeader xmlns:ns2="https://adwords.google.com/api/adwords/mcm/v201710" xmlns="https://adwords.google.com/api/adwords/cm/v201710"><requestId>0005688c563ddfd80ac135d5b10244c9</requestId><serviceName>ManagedCustomerService</serviceName><methodName>get</methodName><operations>1</operations><responseTime>488</responseTime></ns2:ResponseHeader></soap:Header><soap:Body><ns2:getResponse xmlns="https://adwords.google.com/api/adwords/cm/v201710" xmlns:ns2="https://adwords.google.com/api/adwords/mcm/v201710"><ns2:rval><totalNumEntries>1</totalNumEntries><Page.Type>ManagedCustomerPage</Page.Type><ns2:entries><ns2:customerId>4067368627</ns2:customerId></ns2:entries></ns2:rval></ns2:getResponse></soap:Body></soap:Envelope>'
INFO:googleads.common:Response summary - {'requestId': 0005688c563ddfd80ac135d5b10244c9, 'responseTime': 488, 'serviceName': ManagedCustomerService, 'methodName': get, 'operations': 1, 'isFault': False}
Retrieving 1 reports with 1 processes:
Traceback (most recent call last):
  File "C:/Users/Lucia/adwords_python3_examples_10.0.0/v201710/reporting/parallel_report_download.py", line 230, in <module>
    main(adwords_client, REPORT_DOWNLOAD_DIRECTORY)
  File "C:/Users/Lucia/adwords_python3_examples_10.0.0/v201710/reporting/parallel_report_download.py", line 84, in main
    process.start()
  File "C:\Users\Lucia\AppData\Local\Programs\Python\Python36-32\lib\multiprocessing\process.py", line 105, in start
    self._popen = self._Popen(self)
  File "C:\Users\Lucia\AppData\Local\Programs\Python\Python36-32\lib\multiprocessing\context.py", line 223, in _Popen
    return _default_context.get_context().Process._Popen(process_obj)
  File "C:\Users\Lucia\AppData\Local\Programs\Python\Python36-32\lib\multiprocessing\context.py", line 322, in _Popen
    return Popen(process_obj)
  File "C:\Users\Lucia\AppData\Local\Programs\Python\Python36-32\lib\multiprocessing\popen_spawn_win32.py", line 65, in __init__
    reduction.dump(process_obj, to_child)
  File "C:\Users\Lucia\AppData\Local\Programs\Python\Python36-32\lib\multiprocessing\reduction.py", line 60, in dump
    ForkingPickler(file, protocol).dump(obj)
TypeError: can't pickle SSLContext objects

Process finished with exit code 1



Sreelakshmi Sasidharan (AdWords API Team)

unread,
Mar 29, 2018, 6:26:57 PM3/29/18
to AdWords API Forum
Hi Santiago, 

It looks like the client customer Id in your request is that of a client account (not an MCC). The parallel_report_download.py sample runs the same report type for all client accounts under an MCC account. Hence this is meant to be run against an MCC account. Could you try the sample with a manager account Id and see if that works for you? 

Thanks,
Sreelakshmi, AdWords API Team
Reply all
Reply to author
Forward
0 new messages