Research
Security News
Quasar RAT Disguised as an npm Package for Detecting Vulnerabilities in Ethereum Smart Contracts
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Programmatically drag-and-drop in IRSA Viewer (Firefly) tool via Upload feature
Programmatically load file either drag-and-drop or via URL into Firefly Viewer
dnd_firefly
is a command-line tool that allows you to programmatically upload local files to the Firefly Viewer (IRSA Viewer tool) by simulating a drag-and-drop action or loading from a URL.
This tool is particularly useful for automating data uploads and integrating with scripts or workflows that interact with the Firefly Viewer. This tools complements the existing URL API by enabling support for the Upload feature in scenarios where direct access is not yet available.
Firefly is an open-source web-based UI library for astronomical data archive access and visualization developed at Caltech. The development was started in the context of archive-specific applications at the NASA/IPAC Infrared Science Archive (IRSA), and was then generalized to serve data from many different archives at IRSA (and beyond). It was open sourced in 2015, hosted at GitHub.
See details in the GitHub repository and how to install locally.
dnd_firefly
tool makes use of IRSA Viewer and is compatible since release 2023.3 (Drag-n-drop introduced - FIREFLY-1310.
You can install dnd_firefly
directly from PyPI using pip
:
pip install dnd_firefly
PyPi: https://pypi.org/project/dnd-firefly/
Note: dnd_firefly
requires Python 3.11 or higher.
The tool uses Selenium WebDriver to automate a Chrome browser session. It opens the Firefly Viewer and simulates the drag-and-drop action to upload your specified file or load from URL.
Selenium Manager: Starting from Selenium 4.6.0, Selenium includes Selenium Manager, which automatically manages the browser driver required for automation. If you have Chrome installed, Selenium will handle the rest.
The dnd_firefly
tool accepts one argument: the path to the local file or URL you want to upload to the Firefly Viewer.
For local files:
dnd_firefly /path/to/your/file.tbl
Replace /path/to/your/file.tbl
with the actual path to your local file.
For URL:
dnd_firefly <http|https>://.../file.tbl
Replace <http|https>://.../file.tbl
with the URL.
To upload a file named WISE-allwise_p3as_psd-Cone_100asec.tbl
located in your Downloads
folder, run:
dnd_firefly ~/Downloads/WISE-allwise_p3as_psd-Cone_100asec.tbl
Example of VOTable with 2 tables via URL:
dnd_firefly https://raw.githubusercontent.com/ejoliet/playground/refs/heads/master/data/table_IRS_Enh-Spectra-1.vot
If you need to use a different browser or have specific requirements, you can manually set up the WebDriver.
Download ChromeDriver:
Install ChromeDriver:
chromedriver
executable in a directory that's in your system's PATH
, or specify its location in the code.Note: Manual setup is only necessary if Selenium Manager is unable to manage the WebDriver automatically.
Contributions are welcome! Please visit the GitHub repository to report issues or submit pull requests.
FAQs
Programmatically drag-and-drop in IRSA Viewer (Firefly) tool via Upload feature
We found that dnd-firefly demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.