-
Install the React Developer Tools Chrome Extension.
-
Go to the egghead website, i.e. Getting Started with Redux
-
Click
View -> Developer -> Javascript Console
, then theReact
tab, then the<NextUpLessonList ...>
tag. -
Click back to the
Console
tab, then run:
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const fs = require("fs"); | |
if (!fs.existsSync("package.json")) { | |
console.error( | |
"Cannot find package.json. Please run this script in your project directory." | |
); | |
process.exit(1); | |
} | |
const package = fs.readFileSync("package.json", "utf8"); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class User < ActiveRecord::Base | |
validates :bitcoin_address, format: { with: /\A(1|3)[a-zA-Z1-9]{26,33}\z/, | |
message: "invalid bitcoin address" } | |
end |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$("h3.list_header").each(function(sectionIndex){ | |
var sectionName = $(this).text().replace(/Chapter .+ - /,"").replace(/\:/,'-').replace(/^(V|I|X)+\. /,''); | |
$(this).parent().next().find("a.lecture-link").each(function(videoIndex){ | |
var $lectureLink = $(this); | |
var videoName = $.trim($lectureLink.text()); | |
var downloadLink = $lectureLink.attr('href').replace('view','download.mp4'); | |
var cookieHeader = ' --header \"Cookie:'+ document.cookie + '\" '; | |
var directory = (sectionIndex+1) + '. ' + sectionName + '/'; | |
var filename = directory + (videoIndex+1) + '. ' + videoName + '.mp4'; |