question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

[BUG] OSError: Unable to Upload

See original GitHub issue

I cannot upload to Instagram with InstaPy-CLI using unchanged python scripts which used to work just 2 days ago.

I have two files (master.py and exec.py). I run exec.py to carry out the functions in master.py.

Master.py:

import urllib.request
from PIL import Image, ImageOps
from instapy_cli import client
from datetime import date

def get_item_shop():
    url = "http://api2.nitestats.com/v1/shop/image?footer=USE%20CODE:%20%22DISTURBED%22"
    urllib.request.urlretrieve(url, "itemshop.jpg")

def resize():
    desired_size = 1728
    im_pth = "itemshop.jpg"

    im = Image.open(im_pth)
    old_size = im.size  # old_size[0] is in (width, height) format

    ratio = float(desired_size)/max(old_size)
    new_size = tuple([int(x*ratio) for x in old_size])
    # use thumbnail() or resize() method to resize the input image

    # thumbnail is a in-place operation

    # im.thumbnail(new_size, Image.ANTIALIAS)

    im = im.resize(new_size, Image.ANTIALIAS)
    # create a new image and paste the resized on it

    new_im = Image.new("RGB", (desired_size, desired_size), (30,30,30))
    new_im.paste(im, ((desired_size-new_size[0])//2,
                        (desired_size-new_size[1])//2))

    output_path = 'itemshop2.jpg'
    new_im.save(output_path)





def post():
    today = date.today()
    d2 = today.strftime("%B %d, %Y")

    heart = "\U00002764"

    username = 'fbr.itemshop'
    password = 'Albion0411'
    cookie_file = 'cookie.json'

    image = 'itemshop2.jpg'
    text = 'Daily item shop for ' + d2 +'.' + '\r\n' + '\r\n' + 'Rate this item shop from 1-10!' + '\r\n' + '\r\n' + 'Use code: "Disturbed" to support me! ' + heart + '\r\n' + '#fortnite #itemshop #dailyitemshop #fortniteitemshop'


    with client(username, password, cookie_file=cookie_file, write_cookie_file=True) as cli:

        cookies = cli.get_cookie()

        cli.upload(image, text)

Exec.py:

import master
import time

master.get_item_shop()
print("Item shop saved.")
time.sleep(5)
master.resize()
print("Image resized.")
time.sleep(5)
master.post()
print("Image posted.")

These scripts fetch the Fortnite Item Shop image from nitestats.com API, resizes it to 1:1 for IG, and uploads it. Saving the image and resizing still works, but posting to IG doesn’t. As the item shop refreshes every day at 00:00 for me, I use crontab on my RPi to schedule the running of these python scripts. It has worked in the past, so I know crontab has no errors. However, I set crontab to write to a log so that I could see if anything went wrong. Below is what I got.

Logs

This is what is outputted to a log when the scripts are functioning:

Item shop saved.
Image resized.
[IG] not found cookie/cookie_file >> login as default
SAVED: COOKIE_FOR_USER.json
Done.
Image posted.

And, when they’re not working:

Item shop saved.
Image resized.
[IG] re-use cookie from COOKIE_FOR_USER.json
Error is >>
    Bad Request

Something went bad.
Please retry or send an issue on https://github.com/b3nab/instapy-cli

Traceback (most recent call last):
  File "/home/pi/Downloads/ItemShopBot/exec.py", line 10, in <module>
    master.post()
  File "/home/pi/Downloads/ItemShopBot/master.py", line 57, in post
    cli.upload(image, text)
  File "/home/pi/.local/lib/python3.8/site-packages/instapy_cli/cli.py", line 153, in upload
    raise IOError("Unable to upload.")
OSError: Unable to upload.

Env (please complete the following information):

  • OS: Raspbian and Windows 10
  • Python: 3.8
  • instapy-cli Version: 0.0.12

I have searched Google for this issue, and the only thing I could find was saying that Instagram have declined my request to upload. I have attempted to run the code on Windows, which gave the same issue, with and without a VPN, with different Instagram accounts, reset the passwords, and tried to use the scripts with and without the cookie file. I am fairly new to Python and would appreciate any help possible.

Issue Analytics

  • State:open
  • Created 4 years ago
  • Reactions:5
  • Comments:54 (1 by maintainers)

github_iconTop GitHub Comments

6reactions
ghostcommented, Oct 31, 2019

I’m facing the same issue as well. I’ve wrote a very simple code to upload an image called ‘t.png’ that’s in the same directory as my source code.

Source Code:

from instapy_cli import client

username = '' #Username Goes Here
password = '' #Password Goes Here

content = './t.png'
with client (username, password) as cli:
    cli.upload(content)

Error Obtained:

[IG] not found cookie/cookie_file >> login as default
Error parsing error response: Expecting value: line 1 column 1 (char 0)
Error is >>
    Bad Request

Something went bad.
Please retry or send an issue on https://github.com/b3nab/instapy-cli

Traceback (most recent call last):
  File "pg.py", line 8, in <module>
    cli.upload(content)
  File "C:\Users\RJ\Desktop\NewTest\lib\site-packages\instapy_cli\cli.py", line 153, in upload
    raise IOError("Unable to upload.")
OSError: Unable to upload.

Environment:

  • Python version 3.7.3
  • Instapy-CLI version 0.0.12
  • Windows 10 machine

I’d also like to note that I’ve done the modifications to media.py as @Karltroid recommended and I’m still facing the same issue. I’ve also tried to modify media.py as per #46 and that still didn’t help.

4reactions
rgomunitacommented, Nov 3, 2019

I solved the problem by uninstalling and then installing: (Ubuntu 18.04.3 with Python3)

pip uninstall instapy-cli pip install instapy-cli

(for python3 replace pip to pip3)

Read more comments on GitHub >

github_iconTop Results From Across the Web

OSError: Unable to upload - python - Stack Overflow
and i get the following error: [IG] not found cookie/cookie_file >> login as default Error parsing error response: Expecting value: line 1 ...
Read more >
Errors when uploading a sketch - Arduino Help Center
When there is an error the IDE will print relevant information in the ... Upload error: Failed uploading: uploading error: exit status 74....
Read more >
OSError: Unable to open file (from githib) - Streamlit
My trained model was large, I uploaded to my github repository using git lfs. I then used the script below to load the...
Read more >
"OSError: [Errno 28] No space left on device" when uploading
If the sequence you're trying to upload is bigger than the current size given to /tmp, then you'll get this error. The easiest...
Read more >
OSError: unexpected end of file while parsing chunked data
Summary: Failed to upload image data due to internal error: OSError: unexpected end of... Keywords: Triaged.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found