タグ

ブックマーク / qiita.com (243)

  • Javaですべての上場企業のと地方自治体のサイトをスクレイピングして大変だったこと - Qiita

    私は主にJavaを使って大量のサイトからクロールとスクレイピングをしています。 作っているサイトは happyou.info です。上場企業と官公庁と地方自治体とその他1万サイトくらいスクレイピングしています。 このエントリでは、技術的なこと特にめんどうくさかった点を書き残しておきたいと思います。基的なことかもしれませんが、私自身忘れそうなところもあるので。 1.上場企業は企業が入れ替わる 上場企業は毎日企業が入れ替わります。新規上場、上場廃止、合併、分社化、企業名変更は毎日のことです。この変化にキャッチアップするのが難しかったです。 日取引所グループ 「よし上場前からきっちりスクレイピングして事前に準備しておくぞ」と思っても、上場にあわせてサイトをリニューアルしたりする企業も多いので油断なりません。 官公庁のサイトは、民間企業に比べるとはるかに移転が少なく落ち着いています。 地方公共

    Javaですべての上場企業のと地方自治体のサイトをスクレイピングして大変だったこと - Qiita
  • Webアプリケーションの構成に関する予備知識 - Qiita

    自分の担当したWebアプリケーションを引き継ぐ際に、予備知識として説明したことのまとめ 注意事項 もともと明確に定義されていない概念や、簡単に説明するため正確さを犠牲にした部分が多い 間違っていることを前提に、疑いながら読むのがベター アプリケーションの層構造 アプリケーションを構成するオブジェクトには非常の多くの種類がある アプリケーションの(より良い)構成をオブジェクト単位で考えるのは難しいので、もっと粒度の大きい単位で考えたい アプリケーションをいくつかの層(オブジェクトの所属するグループ)に分割し、層単位でアプリケーションの構成を考える View層(ビュー層) レスポンスをクライアントにとって都合のいい形(i.e. 画面)に変換する層 View層のオブジェクトは Controller層のオブジェクトから利用される DomainModel層のオブジェクトを利用して、ユーザーに表示した

    Webアプリケーションの構成に関する予備知識 - Qiita
  • PSR-11 Container interface - Qiita

    PSR一覧 PSR-5 / PSR-6 / PSR-11 / PSR-12 / PSR-14 / PSR-16 アレだよアレ、えーとほらなんだっけ、依存性注入とかいうやつ。 そんなわけでPSR-11 Container Interfaceが2016/12/13現在レビュー中となっているので翻訳してみます。 このURL、ステータスが変わると一緒に変わってしまって不便なんだけどどうにかならんのだろうか。 なお私は英検で3級を取る程度の程度の能力なのでプルリク待ち。 このドキュメントは、依存性注入コンテナのインターフェイスについて解説するよ。 ContainerInterfaceの目的は、フレームワークやライブラリがコンテナから中身のデータ(以降エントリと呼ぶ)をどのように取得するかの扱いを標準化することだよ。 "MUST"とか"MAY"とかの意味合いについてはRFC2119を参照。 このドキュ

    PSR-11 Container interface - Qiita
  • step by stepで始めるwebpack - Qiita

    webpack1系の記事です。 1→2への移行ガイドを見る限り破壊的な変更点はそんなにありませんが、preLoadersやpostLoadersがなくなっていたり、差が出ていますのでご注意ください。 https://webpack.js.org/guides/migrating/ webpackを手を動かしつつ学べる初学者向け資料を作成しました。 公式のチュートリアルもあるのですが、webpackが使用されているOSSのボイラープレートを見る限り、世の中の使われ方に沿ってないかも?と思い書きました。 これから始める人の手助けになれば幸いです。 また最終形のソースをupしてあるので詰まったら見てください。 webpackとは webpack で始めるイマドキのフロントエンド開発の説明が良かったので引用させていただきます。m(_ _)m webpack は WebApp に必要なリソースの依

    step by stepで始めるwebpack - Qiita
  • 旧石器時代のJavaScriptを書いてる各位に告ぐ、現代的なJavaScript超入門 Section1 ~すぐにでも現代っぽく出来るワンポイントまとめ~ - Qiita

    はじめに ネットには様々な情報が溢れており、JavaScriptに関する情報も多数存在しております。 その中には、「今時こんな書き方しねえよ…」と思わずツッコミを入れたくなるような、当に、当に古い内容について書かれている古文書も存在します。 そんな罠記事の情報に囚われてしまって、いつまで経っても現代的なJavaScriptが書けない皆さんのために、このシリーズの記事では、各セクション毎に分けて、旧石器時代の記述と、現代の記述を紹介する形で、文明開化をしていきたいという思いで記述する。 最初は、現在比較的メジャーなブラウザで一通り動作する「ECMAScript 5」までの内容に関してポエムを書き連ねていき、最終的には一連の内容を読むだけで「ES6(ES2015)」による新機能や、絶賛提案中の「ES7」の一部提案内容についても把握し、おおよそ現代人を育成することを目標とする。 …なんてめっ

    旧石器時代のJavaScriptを書いてる各位に告ぐ、現代的なJavaScript超入門 Section1 ~すぐにでも現代っぽく出来るワンポイントまとめ~ - Qiita
  • 【2017年度版】Webエンジニアでも最低限押さえておきたい、SEO施策のまとめと実装 - Qiita

    Webエンジニアでも最低限のSEO知識を持っておきたい ferretやferretOneといったウェブマーケティングのメディア、ツールを開発、運営している株式会社ベーシックで働いており、近々ECサイトphocaseにて格的にSEO施策を行うので、勉強がてらエンジニアが覚えておくべきだと思ったSEO周りの知識をまとめました。 この記事も書いていたら長くなってしまったので知らない部分をピックアップして読んでいただければと思います。 実装方法やSEO施策の詳細は貼ってあるリンクだけではなく、 別途Googleで検索するなどして複数の意見をインプットすることをおすすめします。 ###★この記事を読むとどうなるか マーケター、ディレクターとのやりとりがスムーズになる。 意図せず検索順位を下げてしまうコードに気づける様になる。 エンジニア側だけで動けるSEO施策を提案できる様になる。 なんとなくSE

    【2017年度版】Webエンジニアでも最低限押さえておきたい、SEO施策のまとめと実装 - Qiita
    nagoling
    nagoling 2017/04/26
  • Angular2でHello world! - Qiita

    この先作る予定のWebサービスはRIAにしたいので、今後作る勉強用サンプルもどうせなら何かRIA向けのJSフレームワーク使いたい。 とゆうわけでAngular2を触ってみます。まずはhello world。 今回の記事は英語Angular2のクイックスタートページ の内容とほぼ同じです。 そんな記事を載せる価値があるのか?とも思いましたが、世の中にはドキュメントが英語なだけでやる気を無くす人も居るに違いないと思い、ソースの99%を転載した記事を書いていました。 より最小化したコードにしてもよかったのですが、Angular2の知識がロクにない状態で間違った情報を発信してしまうリスクもあるため止めました。 今回やりたいこと Angular2で「hello world」を表示してみる。終わり。 環境 Microsoft Surface Pro4 (i5 2.4GHz, Mem 4GB) OS:

    Angular2でHello world! - Qiita
  • 【CakePHP】コンソールから実行 - Qiita

    コンソールからCakeを実行する方法。例えばcronで使う。 コンソールから実行されるクラス作成 app/Console/Command/直下に、AppShellを継承したクラスを作成する。 class HogeShell extends AppShell{ //使用するモデル public $uses = ['Hoge']; //AppShellでウェルカムメッセージの表示を行っている。オーバライすると抑止される。 //初期化に使うのもあり。 function startup(){ parent::startup(); } //呼び出しの際にメソッドの指定がなければmain()が呼ばれる。コントローラのindex()と同じ。 function main(){ // モデルを使用できる $hoge = $this->Hoge->find('all'); } function hogeMet

    【CakePHP】コンソールから実行 - Qiita
  • Vagrantで共有フォルダのマウントに失敗するときの対処方法 - Qiita

    現象 vagrant upで仮想マシンを起動するときに以下のようなメッセージが出て、共有フォルダのマウントに失敗することがあります。 Failed to mount folders in Linux guest. This is usually because the "vboxsf" file system is not available. Please verify that the guest additions are properly installed in the guest and can work properly. The command attempted was: mount -t vboxsf -o uid=`id -u vagrant`,gid=`getent group vagrant | cut -d: -f3`,dmode=777,fmode=666 v

    Vagrantで共有フォルダのマウントに失敗するときの対処方法 - Qiita
  • さくらVPSにまっさらな状態からRuby2.1.0+Rails4.2.1+nginx+unicorn+capistranoの環境を構築したのでやんわり手順を書いた。 - Qiita

    さくらVPSにまっさらな状態からRuby2.1.0+Rails4.2.1+nginx+unicorn+capistranoの環境を構築したのでやんわり手順を書いた。RubyRailsnginxCapistranounicorn さくらVPSを借りてみたのでRailsを動かしてついでに手元のローカル環境で作ったアプリをデプロイ出来るようにしてみました。 完全に初心者なので、細かい所は分かってませんが初心者目線で出来ればと思います。 コピペしていけば構築出来るというサルでき方式を目指して書きました。 登場人物 ruby - rubyこれは知ってた。javaの親戚みたいなやつ rbenv - rubyのバージョンを選べるようにする便利なやつ rails - rubyを使ったサイトの構築を簡単に行うやつ nginx - サーバーソフト?だと思う。こいつがいれば複数のrailsプロジェクトを1つのサ

    さくらVPSにまっさらな状態からRuby2.1.0+Rails4.2.1+nginx+unicorn+capistranoの環境を構築したのでやんわり手順を書いた。 - Qiita
  • ゼロからCloud9で制作したRoRプロジェクトをDigitalOceanへdeployする - Qiita

    Github 登録しrepositoryを作成します。 今回はcapistrano-exampleで作成します。 Githubアカウントでログインできます。 Workspace作成 Clone from Git or Mercurial URLは空のままにしておきます。 Choose a templateはBlank(旧Custom)を選びます。 railsを選ばないのは自動でプロジェクトを生成されないようにするためで、git repositoryを設定しないのはworkspaceのルートとrepositoryのルートが一致しないためです。 PostgreSQL DBの初期設定を行います。 今回はmy_app_nameで登録します。

    ゼロからCloud9で制作したRoRプロジェクトをDigitalOceanへdeployする - Qiita
  • Dockerを使って1サーバで複数Webサービスを運用するためのマイベストプラクティス - Qiita

    はじめに エンジニアやっていると色んなサービスを作りたくなると思うのですが、Herokuのフリープランが使えなくなってしまった影響で無料でのサービス運営は難しくなってきています。 もちろん、Google App Engineなど無料で運用できるものもあるのですが、サービスにロックインされてしまうのが多くちょうど良い物が見つかりませんでした。 ということである程度安く色々やろうとすると、1台のサーバでいい感じに複数サービスを立ち上げるという昔ながらの構成になるのですが、Dockerを使うことで環境セットアップなどサーバ管理の手間を最小限にしていこう、というのがこの記事の趣旨となります。 方針 要件 安い サービスにロックインされない スケーラブル(もしサービスのアクセス量が増えたとしてスケールさせられる) インフラ管理が容易 セキュリティとかなるべく気にしたくない 以上のことを踏まえた結果C

    Dockerを使って1サーバで複数Webサービスを運用するためのマイベストプラクティス - Qiita
  • 超初心者がDocker for MacでRuby + Rails + Mysqlの開発環境を構築 - Qiita

    はじめに Dockerの知識が全くない超初心者がDockerRailsの開発環境を作成できたので、嬉しさのあまり手順を忘れないよう記録しておきます。 わからなければ以下のサイトを参考にすれば良さそう! Docker ドキュメント日語化プロジェクト Dockerfile リファレンス Compose ファイル・リファレンス Docker for Macのインストール Docker for Macからインストーラをダウンロード。 私は「Get Docker for Mac (stable)」を選択しました。 ダウンロードした「Docker.dmg」を起動して、アプリケーションディレクトリに移動。 Dockerアプリをクリックして、OKボタン連打してたらできました。 Dockerの起動 なんか勝手に起動してた。 【Dockerの確認】

    超初心者がDocker for MacでRuby + Rails + Mysqlの開発環境を構築 - Qiita
  • 高速に開発できる Docker + Rails開発環境のテンプレートを作った - Qiita

    追記 続編書きました。 よりスリムになって、webpackerにも対応しました。こっちの方を読んでください。 「DockerRails+Webpackerの開発環境を構築するテンプレート」 はじめに docker-composeを使い、railsを簡単に開発できるテンプレートを作成しました。 特徴は以下の通りです。 bundle installをイメージビルドのときではなく、ENTRYPOINTで行う springコンテナを用意して高速にrailsコマンドを実行できる テンプレートは、github にアップロードしています 使い方 テンプレートからプロジェクトを立ち上げる場合は、以下のコマンドです。RubyバージョンやRailsのバージョンを調整できます。 git clone https://github.com/kawasin73/rails_docker_template.git c

    高速に開発できる Docker + Rails開発環境のテンプレートを作った - Qiita
  • JSON-LD - Qiita

    当は、"JSON-LDとXML"というタイトルにしようと思ったが、XMLは語るにはあまりに広い世界で恐ろしいし、詳しい先生方が多い領域なので、JSON-LD だけを書くことにした、そんなエントリーです。 (もっとも、Linked Data 初心者であることは確かですので、誤りが有れば、ご指摘下さい) 追記 2014/08/27: メトロのオープンデータ活用コンテストが、JSON-LDなのに気をよくして、配列について追記しました。 みんな大好きJSON ですが、JSONでは、複雑なデータを記述できません。端的に言うと、XMLのように、XML Namespaceを使って、スキーマを使った意味づけができません。これでは、意味づけが曖昧になって、利用に制限が生じるので、何とかしよう、というのが JSON-LD です。 W3C の仕様 http://www.w3.org/TR/json-ld/ W

    JSON-LD - Qiita
  • AWS料金早見表

    サーバレスアーキテクチャ構成にしたときに 実際のところ、どれくらいの料金になるのか気になったので算出してみようと思います。 (あくまでシミュレーションしたものでAWS側で値段や計算方法が変わったりするため、責任は負いかねますので導入する際は自己責任でお願いします。) AWSのどこにどれくらいの料金がかかっているのか知ることは大事だと思ったのですが、トータルだとなかなかまとまってなかったのでまとめてみました。 間違ってたらご指摘いただけると助かります。 サーバレスアーキテクチャって何?って方はこちら参照してください 世界に先駆けてAWSサーバレスアーキテクチャでユーザ認証とAPI認可の実装をしてみた AWSサーバレスアーキテクチャでCloudFrontからWAFをかけてAPI Gatewayを呼ぶ Lambda+RDSはアンチパターン 全部教えます! サーバレスアプリのアンチパターン とチュ

    AWS料金早見表
    nagoling
    nagoling 2017/04/02
  • 初心者がAWSでRailsアプリを動かすためにやったこと - Qiita

    0.はじめに 0-1.はじめに AmazonAWSの無料枠を利用し、小さくRailsアプリケーション開発をはじめることにしました。AWS導入の備忘録を兼ね、所感をまとめました。 私は、プログラミング初心者のため、記載している内容に誤りがある可能性があります。誤りや、改善した方が良い点などあれば、コメントなどでご指摘いただけると幸いです。 0-2.作ったサービス https://door2.me 現在β版です。 こんな感じのプロフィールが簡単に作成できます。 0-3.対象読者 私と同じようにWebアプリケーション開発初心者の方 これからAWSを触ってみようと思っている方 上記のような方に、AWSの敷居がそう高くないことが伝われば幸いです。 0-4.大まかな流れ 1.AWSについて知る 2.アカウントを登録する(IAMユーザの作成、MFAの設定) 3.EC2でサーバを立ち上げる 4.負荷分散

    初心者がAWSでRailsアプリを動かすためにやったこと - Qiita
  • Vue.js で Serverless の SSR SPA を構築する - Qiita

    お正月なので何か挑戦したいと思い Vue.js と サーバレスアーキテクチャを使った SSR 構成に挑戦してみました。 構想 Vue.js の SPA(SSR対応版)を サーバレスアーキテクチャで組み上げます。 基となるSPAサイト(主にJSやCSS)はS3経由で、SSR 的なサーバサイドの描画が必要な箇所は、Serverless Frameworkを使用して Lambda + ApiGateway で構築します。 SSR的なHTML配信と静的なAssets配信は同じオリジンで行いたいので最終的には CloudFrontで両者をマージします。 普通にVue.jsでSPAを作る まずは兎にも角にも普通に Vue.js でSPAを作って行きます。 Vue.js の開発は Vue CLI を使えば高速に始められます。 SPAのルーティングは VueRouterで簡単に実装できますが、 Rout

    Vue.js で Serverless の SSR SPA を構築する - Qiita
  • AWS Lambdaを活用したServerless Frameworkを触ってみる - Qiita

    Wantedly Advent Calendar 2015 13日目です。 iOS エンジニアの 杉上 @susieyy です。 Serverless Frameworkとは Serverless FrameworkのV0(BETA)が12/8に遂にリリースされました。 Serverless Frameworkはサーバレスなアプリケーションサービスを構築するためのフレームワークで、AWSの各種サービスを相互活用して動作します。AWS Lambdaを中心に添えた構成によりメンテナンス性とスケーラビリティがが高いサービスを構築することができます。 Serverless (formerly JAWS): The serverless application framework – Use bleeding-edge AWS services to redefine how to build ma

    AWS Lambdaを活用したServerless Frameworkを触ってみる - Qiita
  • 【AWS】S3まとめ - Qiita

    どうも、iron千葉です。 S3について、ユーザガイドを見てポイントをまとめました。 ポイントだけ確認したい人、ざっと全体を見たい人におすすめです S3は奥が深い。 S3とは? インターネットストレージ(平たく言うとgoogleドライブevernoteのようなwebブラウザから利用できるストレージ) S3はAPIまたはAWS CLIにてプログラムから操作(ファイルのアップロード、ダウンロード、削除)ができる 容量制限なし データはいつでもダウンロード可能 柔軟なアクセス制御ができる(IAM、アクセスコントロール、バケットポリシー) S3の概念 バケット バッケットを作成し、その配下にデータを格納する バケットはS3の中で一番大きな バケットは複数作成できる バケットでアクセス制御が可能 バケット作成時は、配置するリージョンを指定する オブジェクト オブジェクトは、データ(アップロードファ

    【AWS】S3まとめ - Qiita