Skip to content

Instantly share code, notes, and snippets.

@baptx
baptx / amazon_mp3_multiple_download.user.js
Created Oct 12, 2014
Amazon MP3 multiple download (Amazon Cloud Player for Web)
View amazon_mp3_multiple_download.user.js
// ==UserScript==
// @name amazon_mp3_multiple_download
// @namespace amazon
// @description Download all songs in current playlist
// @include https://www.amazon.*/gp/dmusic/mp3/player*
// @version 1
// @grant none
// ==/UserScript==
setTimeout(function() {
@baptx
baptx / twitter_timeline_update.js
Created Oct 12, 2014
Twitter timeline update
View twitter_timeline_update.js
var target_tweet = document.getElementsByClassName("stream-container")[0];
var observer = new MutationObserver(function(mutations) {
for (var i = 0; mutations[i]; i++)
document.getElementsByClassName("new-tweets-bar")[0].click();
});
var config = { attributes: true, childList: true, characterData: true }
observer.observe(target_tweet, config);
@baptx
baptx / twitter_uri_resolver.js
Created Oct 12, 2014
Twitter URI resolver (t.co links)
View twitter_uri_resolver.js
var linksLength = document.getElementsByClassName("twitter-timeline-link").length;
for (var i = 0; i < linksLength; i++) {
var link = document.getElementsByClassName("twitter-timeline-link")[i];
if (link.getAttribute("data-ultimate-url"))
link.setAttribute("href", link.getAttribute("data-ultimate-url"));
else
link.setAttribute("href", link.getAttribute("data-expanded-url"));
}
@baptx
baptx / remame_by_playlist_index.sh
Created Oct 12, 2014
Rename by playlist index
View remame_by_playlist_index.sh
IFS=$'\n'
if [ $# -gt 0 ]; then
if [ ! -f $1 ]; then
echo "Error: file $1 does not exist"
exit
fi
path=`echo $1 | rev | cut -d / -f 2- | rev`
if [ $path == $1 ]; then
path=$PWD
fi
@baptx
baptx / copy_folder_by_filename.sh
Created Oct 12, 2014
Copy folder by filename
View copy_folder_by_filename.sh
IFS=$'\n'
if [ $# == 2 ]; then
if [ ! -d $1 ]; then
echo "Error: directory $1 does not exist"
else
dir=$1
len=$((${#dir} + 1))
if [ ! -d $2 ]; then
mkdir $2
fi
@baptx
baptx / twitter_timeline_scroll.js
Last active Aug 29, 2015
Twitter timeline scroll
View twitter_timeline_scroll.js
// Scroll Twitter home (worked for profiles too before a Twitter update)
/*var target_tweet = document.getElementById("stream-items-id");
var target_fail = document.getElementsByClassName("stream-fail-container")[0];*/
// Scroll Twitter profiles
var target_tweet = document.getElementsByClassName("GridTimeline-items")[0];
var target_fail = document.getElementsByClassName("GridTimeline-failure")[0];
var height = target_tweet.scrollHeight;
var observer = new MutationObserver(function(mutations) {
@baptx
baptx / 2letters_domains_available.node.js
Last active Apr 30, 2018
List available 2 letters domain names in JavaScript using Node.js / JXcore
View 2letters_domains_available.node.js
var https = require("https");
var fs = require("fs");
var ws = fs.createWriteStream("2letters_domains_available.txt");
var domain = "aa.lc"; // format: aa.tld
var numbers = false; // include numbers
function apiParse(body)
{
var status = JSON.parse(body)[0].available;
@baptx
baptx / freelancer_country_filter.user.js
Last active Jul 1, 2020
freelancer.com country filter
View freelancer_country_filter.user.js
// ==UserScript==
// @name freelancer.com country filter
// @namespace https://drawcode.eu/
// @include https://www.freelancer.com/projects/*
// @version 1
// @grant none
// ==/UserScript==
// Commented script needs to run in web console on a job search page (e.g. in a separate Firefox profile to avoid new tab focus and tabs overflow)
// You need to be logged in because the logged out page is different and displays less jobs
@baptx
baptx / twitter_archive_to_csv.htm
Last active Aug 4, 2020
Twitter archive to CSV
View twitter_archive_to_csv.htm
<script>
// copy tweets variable from tweets.js file of your Twitter archive
var tweets = [];
// Open this HTML file and execute the following JavaScript code in the web console (F12 or Ctrl+Shift+K shortcut)
// A textarea will appear so you can copy/paste to save data as a CSV file
/*
var out = [];
var length = tweets.length;
for (var i = 0; i < length; ++i) {
@baptx
baptx / facebook_graph_api.js
Last active Dec 4, 2020
Facebook Graph API groups members intersection (deprecated)
View facebook_graph_api.js
/*
* config
*/
var token = "XXX";
var limit = 5000;
var id1 = "XXX";
var id2 = "XXX";