Splunk Dev

splunk client send error "a bytes-like object is require" with python script

Chandras11
Communicator

Hi Everyone,

I am trying to upload CSV file to a certain index and a certain sourcetype (already exist in Splunk) with a python script. I have already installed Python SDK Splunk and I am using Python 3 with anaconda

import splunklib.client as client
service = client.connect(host='localhost',port=8089,username='admin',password='Passwd')
myindex = service.indexes["Index1"]
mysocket = myindex.attach(sourcetype='ST1',host='My_PC')
file_data = ''
with open("ST1_23_Mai_2018.csv", "r") as lines:
    for line in lines:
        if line.isspace(): 
            line = ' '
            file_data += line 
            file_data += '\r\n'
    mysocket.send(file_data)
mysocket.close()

The SSL handshake is successful. However, I am getting following error through python:-

 File "C:\Users\XXX\AppData\Local\Continuum\anaconda3\lib\ssl.py", line 642, in write
    return self._sslobj.write(data)

TypeError: a bytes-like object is required, not 'str'

Does anyone have faced similar situation before. I try to check the splunk documentation at : http://dev.splunk.com/view/python-sdk/SP-CAAAEE6#add2index and http://docs.splunk.com/DocumentationStatic/PythonSDK/1.6.3/client.html#splunklib.client.Index.upload

0 Karma

xpac
SplunkTrust
SplunkTrust

Hey,

you're sending a string where Splunk expects bytes, a comparable situation is explained here:
https://stackoverflow.com/questions/33054527/python-3-5-typeerror-a-bytes-like-object-is-required-no...

I'd try to just change

 with open("ST1_23_Mai_2018.csv", "r") as lines:

to

 with open("ST1_23_Mai_2018.csv", "rb") as lines:

Hope that helps!

0 Karma

Chandras11
Communicator

Hi,

Thanks for the answer. I already tried to make it rb (read as bytes) but I didn't get any success. The error is still the same.
Do I need to change some properties in anaconda3\lib\ssl.py ??

0 Karma
Got questions? Get answers!

Join the Splunk Community Slack to learn, troubleshoot, and make connections with fellow Splunk practitioners in real time!

Meet up IRL or virtually!

Join Splunk User Groups to connect and learn in-person by region or remotely by topic or industry.

Get Updates on the Splunk Community!

Announcing Modern Navigation: A New Era of Splunk User Experience

We are excited to introduce the Modern Navigation feature in the Splunk Platform, available to both cloud and ...

Best Practices: Splunk auto adjust pipeline queue

When you enable autoAdjustQueue in Splunk, maxSize should be understood as the queue size Splunk starts with ...

Request for Professional Development: Attending .conf26

Winning Over the Boss: Your Pass to .conf26 conf26 is going to be here before you know it. If don't already ...