126

GitHub - talwrii/curlfire: Fetch web pages with curl using Firefox's cur...

 6 years ago
source link: https://github.com/talwrii/curlfire
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

curlfire

Run curl with the current Firefox cookies. This is useful for interacting with logged in websites from the shell, without having to manually deal with the login process.

The executable cookiefire included in this package can be used to extract the cookies from Firefox.

This is achieved by reading the cookies.sqlite file in Firefox profiles.

Attribution

This code is adapted from this Stack Exchange answer by hackerb9.

Usage

# Fetch google with the cookies from the default profile
curlfire http://www.google.com/

# Fetch google with the cookies from the blah profile
curlfire -P blah http://www.google.com/

# Getting cookies
cookiefire > /tmp/cookies
curl -b /tmp/cookies http://www.google.com/

Caveats

  • Does not work with session cookies(1) (you may be able to work around this by setting "Remember me" for the website with which you are using your tool)
  • Only tested on linux machines
  • Unlikely to work with windows
  • Will probably work on macs but untested (feedback welcome)

Installation

cd ~
git clone https://github.com/talwrii/curlfire
echo 'PATH=$PATH:~/curlfire' >> ~/.bashrc

Alternatives and prior work

  • Adapted from this Stack Exchange answer
  • Firebug and friends allow one to copy requests as curl commands. This can be suitable for debugging.
  • Cookies can be exported manually from within Firefox

All of these approaches can be time consuming when automating tasks.

Prior to Firefox 57, the remote control extension could be used to interact with the page currently viewed in Firefox from the shell (including outputting the current document object model as HTML).

Complementary projects (and shameless advertising)

Users of this project might also be interested in:

Copyright

This code is distributed under an MIT license. It contains code adapted from a code snippet in the aforementioned Stack Exchange answer which is also distributed under an MIT license as stipulated by the Stack Exchange terms and conditions.


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK