Giter VIP home page Giter VIP logo

etsy-api-store-automation-node-app's Introduction

Etsy Automation App

This is a Node.js application designed to automate various tasks related to managing an Etsy store. It fetches data from Etsy's API, processes CSV files, performs web scraping, and generates output files based on user inputs.

Features

  • OAuth Authentication with Etsy: The app uses OAuth for authenticating with Etsy's API.
  • CSV File Processing: The app processes CSV files to create templates, update listing titles and tags, and display scraped keyword data.
  • Web Scraping with Puppeteer: The app uses Puppeteer for web scraping, logging into eRank and scraping keyword data.
  • File Uploads with Multer: The app handles file uploads, accepting CSV files from the user for processing.
  • Image Uploads to Etsy: The app uploads images to Etsy listings as binary data. It reads image files from a specified directory, and uploads them to the corresponding Etsy listings.
  • Updating Etsy Listings: The app updates Etsy listings with new titles and tags. It reads this data from the completed (previously created) CSV template file.
  • Template Rendering with Handlebars: The app uses Handlebars to render HTML templates, displaying dynamic data to the user.
  • Application Packaging with pkg: The app is packaged into an executable file using [pkg], allowing it to be distributed and run as a standalone executable.

How it Works

The application is initiated by a GET request to various endpoints, depending on the task to be performed. These requests are made through the browser interface, where the user can specify the necessary inputs.

The application fetches data from Etsy's API, processes CSV files, performs web scraping, and generates output files. The output files are written to the ./spreadsheets/ directory.

Scraped keywords are output into a created .csv file.

For image uploads, the application reads image files from the ./listing_images/ directory. It then uploads these images to the corresponding Etsy listings using Etsy's API.

For updating Etsy listings, the application reads a CSV file containing new titles and tags for each listing. It then uses Etsy's API to update the listings with this new data.

The user interface is rendered using Handlebars. After each task is completed, a success message is displayed on the page.

Running the App

The application is packaged into a portable executable file using pkg. This allows the client to run the app on their PC as needed.

Dependencies

The application uses the following dependencies:

  • csv-parser
  • csv-writer
  • dotenv
  • express
  • hbs
  • multer
  • node-fetch
  • puppeteer
  • puppeteer-extra
  • puppeteer-extra-plugin-stealth

Note

Sensitive information such as API keys are stored in a .env file which is ignored by Git.

etsy-api-store-automation-node-app's People

Contributors

daveybuilder avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.