Skip to content

Instantly share code, notes, and snippets.

@vjuutilainen
Created April 24, 2018 06:00
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save vjuutilainen/67f866aabef2ac354672002c305e39fd to your computer and use it in GitHub Desktop.
Save vjuutilainen/67f866aabef2ac354672002c305e39fd to your computer and use it in GitHub Desktop.

Dataa verkosta -muistilista

Ohjelmia

Verkkoselaimen kehittäjätyökalut

  • Cmd + Alt + i (OSX)
  • Ctrl + Shift + i (Linux, Win)
  • Safarissa kytkettävä päälle asetuksissa

Toisenlaista kopiointia

$$('.titleColumn a')

  • Tee myös lista linkkielementtien osoitteista:

Array.from($$('.titleColumn a')).map(x => x.textContent)

  • Tallenna myös leikepöydälle:

copy(Array.from($$('.titleColumn a')).map(x => x.textContent))

Lähestymistapoja raapimiseen

\newpage

Koodia: R

library(rvest)
topmovies <- read_html("https://www.imdb.com/chart/top")
movienames <- topmovies %>% 
  html_nodes(".titleColumn a") %>%
  html_text()
movienames

Koodia: Node.js

const puppeteer = require('puppeteer');
(async() => {
  const browser = await puppeteer.launch();
  const page = await browser.newPage();
  await page.goto('http://www.imdb.com/chart/top');
  const movies = await page.$$eval('.titleColumn a', elems => {
    return Array.from(elems).map(elem => elem.textContent);
  });
  await browser.close();
  console.log(movies);
})();

"If you have ghosts..."

  • Päätön verkkoselain: Nopeampi, mutta rajoittunut
  • Oikea verkkoselain: Hitaampi, kuten oikea selain

Pääte

  • Tee kyselyjä: curl https://www.google.com
  • Lataa asioita: xargs -n 1 curl -O < urls.txt (olettaen, että urls.txt on rivitetty lista osoitteita)

Rajapinnat inspiraationa

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment