I was working on a gig where I need to automate Instagram posts by uploading multiple photos and by adding random hashtags. Once the photos pushed to the queue, it should publish on a specified date and time. In this post, I am going to tell you how Blazemeter helped me in solving recording issues with JMeter.
Is It Possible to Automate Instagram Photo Upload?
There are no official APIs available to upload photos to the Instagram queue. It is illegal to leverage automate postings in Instagram. The existing tools such as Schedugram, Hootsuite, Later, or other tools, do not use any APIs to schedule the photo upload.
If you take Schedugram, they do not use any APIs to post photos to your Instagram feed. How it works is 100% automation. Like a real person sitting behind the computer, uploading your photos on behalf of you, and posting your data when the time arrives. Schedugr.am specializes only in Instagram, unlike Hootsuite where you can manage multiple social accounts.
How Blazemeter Helped Me
I was trying to automate Instagram via Schedugram. It is like automating the automation tool. Following are challenges I was facing with multiple tools:
- I evaluated JMeter, HPE LoadRunner (TruClient Web) and other windows based automation tools.
- Using TruClient Web protocol, I was able to automate everything except the file uploading process where the help manual stated that to contact HPE for the custom code. See this page for more details.
- Other windows-based automation tools don’t meet my requirements.
- Using JMeter, I was able to record, but most of the client side rendering didn’t record.
After spending a couple of hours, I thought why not try Blazemeter? I have had an account with Blazemeter, it is free to sign up. I used Blazemeter Chrome add-on to record the business flow, and then I exported it as JMeter file.
In JMeter script, I can clearly see all the calls including file upload requests. Basically, it was REST calls, then I validated using Chrome Devtools where I can see the same calls. But when I was trying in JMeter, it didn’t record those REST calls.
There is only one call to upload photos, add captions, date and time for multiple photos. During the upload, the photos are being uploaded to their cloud and it gets converted into two formats — one as the actual format and another one as thumbnails.
It is not possible to upload the photos from your desktop, instead, you can upload the photos to your website root folder and map that URL in the REST call.
In JMeter, the POST REST request where the actual schedule is happening, there you need to map the URLs and other details. In this way, you can automate Instagram via Schedugram. All you need is a valid Instagram and Schedugram account.
The above tutorial is only for educational purpose. All trademarks and registered trademarks are the property of their respective owners.
Your turn: Have you tried automating any such scenarios?