ソース 以下のようになると思います. スクレイピングしたいページのURLと出力ファイル名を指定すると,ページのタイトルなどがJSON形式で帰ってくる仕組みです. 関数scrapingが本体です. import sys import json import requests from bs4 import BeautifulSoup import codecs def scraping(url, output_name): # get a HTML response response = requests.get(url) html = response.text.encode(response.encoding) # prevent encoding errors # parse the response soup = BeautifulSoup(html, "lxml") # extra
Elixir関連の記事を眺めていたら以下の記事を見つけた。面白そうなので試してみる。 Scraping a Website with Elixir – Robert Lord core.garbage-collection.net 基本的には上記の記事に沿う。 PhantomJSのインストール npm --save phantomjs pakcage.jsonにrun scriptを追加。 ...(省略) "scripts": { "phantomjs": "phantomjs --webdriver=5555", "test": "echo \"Error: no test specified\" && exit 1" }, ...(省略) プロジェクトの作成 mix new elixir_scraping_sample mix.exsにHoundを追加。最新は0.7.6。(0.7.2を
🔱Kotlinによるスクレイピング🔱 図1. 艦これの画像をKotlinでスクレイピングした画像で作った阿武隈のモザイクアート PythonからKotlinへ部分的な移行@機械学習エンジニアの視点 Pythonは便利な言語です。しかし、スクリプト言語で型を厳密に評価しないということと、いくつかの高負荷な操作において、うまく行かないことがあります。 個人的な経験によるものですが、分析対象が巨大になり、より並列性が求められるプログラムにおいては、Pythonの再現性のないエラーについて悩まされることが多かったです。 何気なく触ってみたKotlinは結構使いやすく、Python3で実装していたScraperを移植してみました。 (なお、私はJavaをろくに触ったことがないです) Pythonのthreadとmultiprocessをつかったスクレイパー 図2. ずっとPythonで使ってたS
JavaScriptの単体テストやE2Eテスト。書いてますかー? それらのテストをCIで実行するとき、Headless ブラウザとしてPhantomJSを使っている人が多いと思います。私もそのうちの一人で、仕事でも使っています。 PhantomJSとは、Scriptable Headless WebKitと説明されており、WebKitベースのブラウザです。 WebKitはただのレンダリングエンジン。という認識だったため、PhantomJSのJavaScriptエンジンはなんだろう?なんでJavaScriptが動いているんだろう?という疑問が沸き起こり、色々調べてみたのでまとめてみます。 JavaScriptエンジンとは? JavaScriptエンジンの役割は、JavaScirptを解釈して実行することです。 例えば、ECMAScript6の機能が使えるブラウザがある。ということは、そのブラ
Selenium便利なんだけど、ブラウザ立ちあげないといけないのはサーバーで使いにくくて不便だよなと思っていたのだけどPhantomJS使えることを知ったので早速遊んでた。なにやりたいかというとGoogle Patent Searchから特許ID抜き出したいのだけど、Python+Selenium+PhantomJSの組み合わせでできることがわかった。 from selenium import webdriver import time driver = webdriver.PhantomJS() driver.get("https://www.google.co.jp/webhp?hl=ja&tab=ww&authuser=0#authuser=0&hl=ja&q=python") print driver.current_url time.sleep(2) driver.save_sc
Seleniumでテストを実行するとき、いちいちブラウザを立ち上げると重くて遅い。 そこで、ブラウザを立ち上げずに、 ヘッドレス(headless)にSeleniumを実行する方法を調べてみた。 Seleniumは実行するブラウザを自由にいれかえることができる。 そこで、特殊なブラウザを指定することによって実現できそうだ。 Environment windows 7 64bit ruby 2.0 環境はRuby & Windowsです。 Base# このコードを改造する。ベースのドライバは firefox require "selenium-webdriver" driver = Selenium::WebDriver.for :firefox driver.navigate.to "https://google.com" element = driver.find_element(:na
http://qiita.com/advent-calendar/2014/frontrend 概論 ここ近年のモダンJSは特に理由がなければcommon.jsのrequireスタイルで記述され、webpack/browserifyでビルド/読み込むことを前提にしてよい。今やビュー層を除いてブラウザとnodeのライブラリの境界は非常に曖昧である。 識者諸君においては常にどちらの環境でも読み込めるようなライブラリを提供するように心がけることを切に願う。 今日はライブラリの名前しか出さないんで各自ググるように。 立場 サーバサイド~ゲームプログラミング出身node寄りフロントエンドエンジニア このサイトのスタッフだけど他のことに手一杯でQiitaのフロントはまだそんなにいじってない すまんな 他ってなんだろうな 言語 CoffeeScript TypeScript 最近DDDっぽい構成を目指し
今日はスクレイピングの話をします。 今回のターゲットは三菱東京UFJダイレクト。金融機関もウェブサービスを提供するようになり、金にまつわる情報を電子化しやすくなりましたが、かれらが API を提供しているわけではないので、私たちのほうで取得・加工をしてやる必要があります。今やウェブサイトであれば当然のように JavaScript を使っているわけなので、いわゆる mechanize、つまり HTML の解釈をおこない、リンクのクリックやフォームの送信をシンプルに実装するようなやり方でのスクレイピングはすでに無理筋だといえます。 もちろん今日においてはブラウザオートメーションという方法がすでにありますので、これを利用してやれば、なんの憂いもなく実際に人間が使うようなブラウザをプログラマティックに操作することができます。現在は Selenium WebDriver がデファクトで、これが使用す
面倒だった。 Chocolateyない インストーラーない npm install するとPython依存 git clone するとPython依存 Zipファイルを解凍するのだけが正解です。 CasperJSとは JavaScriptアプリケーションのEndToEndテストを実行するためのツール。 JavaScriptでスクリプトを書くSeleniumのようなもの。
Important: PhantomJS development is suspended until further notice (more details). PhantomJS is a headless web browser scriptable with JavaScript. It runs on Windows, macOS, Linux, and FreeBSD. Using QtWebKit as the back-end, it offers fast and native support for various web standards: DOM handling, CSS selector, JSON, Canvas, and SVG. The following simple script for PhantomJS loads Google homepag
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く