title: How to resolve content is empty error in NLU Watson API?
body: <p>I am streaming tweets in a file <code>tweet.txt</code> and using another python script, I am reading the tweets and sending them to Watson. Sometimes, there generates an error: </p>
  
  <blockquote>
    <p>Traceback (most recent call last):   File "readingTweets.py", line 44,
    in 
        language='en'   File "/usr/local/lib/python2.7/dist-packages/watson_developer_cloud/natural_language_understanding_v1.py",
    line 173, in analyze
        method='POST', url=url, params=params, json=data, accept_json=True)   File
    "/usr/local/lib/python2.7/dist-packages/watson_developer_cloud/watson_service.py",
    line 385, in request
        info=error_info, httpResponse=response) watson_developer_cloud.watson_service.WatsonApiException: Error:
    invalid request: content is empty, Code: 400 , X-dp-watson-tran-id:
    gateway02-582988317 , X-global-transaction-id:
    ffea405d5adda40d22bfb21d</p>
  </blockquote>
  
  <p>My code sample is:</p>
  
  <pre><code>while 1:
      where = file.tell()
      line = file.readline()
      if not line:
          time.sleep(1)
          file.seek(where)
      else:
          if (line):
              print "-----------------------------"
              print "the line is: "
              print line
              print "-----------------------------"
              response = natural_language_understanding.analyze(
                  text=line,
                  features=Features(
                      entities=EntitiesOptions(
                          emotion=True,
                          sentiment=True,
                          limit=2),
                      keywords=KeywordsOptions(
                          emotion=True,
                          sentiment=True,
                          limit=2)),
                  language='en'
                  )
              print(json.dumps(response, indent=2))
  </code></pre>