2018年以降の記事はGitHub Pagesに移行しました

ニコレポの仕様が変わったので一覧情報の取得方法を調査した

あらすじ

ニコレポの情報を http://www.nicovideo.jp/my/top/all?innerPage=1&mode=next_page から取得していたが、仕様変更によりこのパラメータが無効?になっていた。

ので、またニコレポを取得できるように色々調査。

調査ログ

  • http://www.nicovideo.jp/my/top/allGoogle Chromeデベロッパーツールを開いた状態でアクセスしてみる
  • nicorepo.js 内でfetch http://www.nicovideo.jp/api/nicorepo/timeline/my/all?client_app=pc_myrepo&_=1234567890123 している?
    • 上記に直接アクセスしてみる
    • パラメータは固定?( _ はユーザー毎に固定?)
  • 以下のようなレスポンスが返ってくる
{
  "meta": {
    "status": 200,
    "maxId": "1499861535479-b3ec9...",
    "minId": "1499754804677-da9ff...",
    "impressionId": "c218734f-bff7-497f-b41c-48071c013111",
    "clientAppGroup": "nicorepo",
    "_limit": 25
  },
  "data": [
    {
      "id": "1499861535479-b3ec9...",
      (略)
      "video": {
        "id": "so31557548",
        "status": "PUBLIC",
        "thumbnailUrl": {
          "normal": "http://tn-skr1.smilevideo.jp/smile?i=31557548"
        },
        "title": "洲崎西 第211回放送(2017.07.11)",
        "videoWatchPageId": "1499858531"
        }
    },
    (略)
    {
      "id": "1499754804677-da9ff...",
      (略)
    },
   ],
  "errors": [],
  "status": "ok"
}
  • data.video が動画情報っぽい
  • 取得件数は _limit で変えられるような気がする
    • が、色々パラメータを付加してみたが25から変わらなかったので別の方法を考える
  • ニコレポページの「さらに読み込む」を選択してみる
    • 新たに http://www.nicovideo.jp/api/nicorepo/timeline/my/all?cursor=1499754804677-da9ff...&client_app=pc_myrepo&_=1234567890123 からニコレポの続きを取得された
    • cursor1499754804677-da9ff... は最初に取得したニコレポ一覧の最後尾の動画の data.id と一致した
    • そして、最後尾の動画の data.idmeta.minid と一致した
  • 以下を繰り返せばニコレポを取得できた
    • http://www.nicovideo.jp/api/nicorepo/timeline/my/all?client_app=pc_myrepo&_=1234567890123 を取得
    • 上記の meta.minidcursor パラメータとして付加する

Android StudioでAndroid Lint

あらすじ

Android Lintを使ってみる。

参考

Android Lintって

  • ADT 16から導入されたツール
  • ソースに潜在するバグをチェックしてくれる
    • Missing translations (and unused translations)
    • Layout performance problems (all the issues the old layoutopt tool used to find, and more)
    • Unused resources
    • Inconsistent array sizes (when arrays are defined in multiple configurations)
    • Accessibility and internationalization problems (hardcoded strings, missing contentDescription, etc)
    • Icon problems (like missing densities, duplicate icons, wrong sizes, etc)
    • Usability problems (like not specifying an input type on a text field)
    • Manifest errors

使用例

コマンドラインから使う事ができる。

$ /Users/USER/Library/Android/sdk/tools/lint --version
lint: version 24.4.1

Android Studioから使いたい。

Analyze -> Inspect Code で実行できる。

Running Android Lint...

Dropboxをコマンドラインで使用する方法

あらすじ

参考サイト

手順

wget -O – "https://www.dropbox.com/download?plat=lnx.x86_64" | tar zxf -
  • .dropbox-dist というディレクトリができるので、その中の dropboxd を実行後、アカウントと紐付ける
$ ~/.dropbox-dist/dropboxd
このコンピュータは Dropbox アカウントにリンクされていません...
このデバイスをリンクするには、https://www.dropbox.com/cli_link_nonce?nonce=HOGE にアクセスしてください。
このコンピュータは Dropbox アカウントにリンクされていません...
このデバイスをリンクするには、https://www.dropbox.com/cli_link_nonce?nonce=HOGE にアクセスしてください。
(以降Dropboxでログインするまでループ)
このデバイスをリンクするには、https://www.dropbox.com/cli_link_nonce?nonce=HOGE にアクセスしてください。
このコンピュータは Dropbox にリンクされました。ようこそ、xxx さん。
強制終了
  • dropbox.py をDLする
wget -O dropbox.py https://www.dropbox.com/download?dl=packages/dropbox.py
$ python dropbox.py 
Dropbox command-line interface
commands:
Note: use dropbox help <command> to view usage for a specific command.
 status       get current status of the dropboxd
 throttle     set bandwidth limits for Dropbox
 help         provide help
 puburl       get public url of a file in your dropbox's publ automatically start dropbox at login
 exclude      ignores/excludes a directory from syncing
 lansync      enables or disables LAN sync
 sharelink    get a shared link for a file in your dropbox
 proxy        set proxy settings for Dropbox

色々いじる前に最低限、lansync(Lan同期)の設定だけは確認しておく。

初期設定のままだと同一Lan内にUDPパケットを投げまくるので、VPSなどで lansync y (デフォルトがy)のままだと他の人に迷惑ががが。

rbenvを最新にして新しいバージョンのRubyをインストールできるようにする

あらすじ

  • git cloneでインストールしたrbenvを最新にして新しいRubyをインストールする

ちょくちょく忘れるので

手順

Basic GitHub Checkout に沿ってインストールすると、カレントディレクトリ直下に ~/.rbenv~/.rbenv/plugins/ruby-build があるはず。ここを最新にする。

$ cd ~/.rbenv
$ git pull
$ cd ~/.rbenv/plugins/ruby-build
$ git pull

$ rbenv install -l を実行してインストールできるRubyのバージョンを確認みる。

好きなバージョンをインストールする。

GradleのresValueで値をリソースに設定する

あらすじ

FacebookAPIを使うために facebookAppId を取得したが、このAPI Keyを設定ファイル( AndroidManifest.xml )外に追い出すのに苦労した。

Gradle力が低いので、もっと良いやり方があるかもしれない。

1.strings.xmlファイルを開きます。パスの例:/app/src/main/res/values/strings.xml。 2.新しい文字列を、facebook_app_idの名前とFacebookアプリIDとともに追加します。

やりたいこと

  • facebookAppIdgradle.properties に定義したい
  • AndroidManifest.xmlgradle.properties から参照した文字列を埋め込みたい
  • ただし、プロパティに定義したKeyは数値のみ(文字数値入り混じったKeyなら問題ない)

manifestPlaceholdersに登録して参照(うまくいかなかった)

  • gradle.properties
    • キーを書いた
facebookAppId=123456711111111
  • build.gradle
    • productFlavorsgetProperty("facebookAppId") と記載し、 gradle.properties から値を呼び出した
    productFlavors {
        develop {
            manifestPlaceholders = [
                                    facebook_app_id: getProperty("facebookAppId")]
            略
        }
    }
  • AndroidManifest.xml
        <meta-data
            android:name="com.facebook.sdk.ApplicationId"
            android:value="${facebook_app_id}" />

これ、確かに参照はできるんだけどFacebookSDKの中でKeyが数値とみなされて applicationId cannot be null となってしまった。

そして、 build.gradle の中で何とか文字列に変換して渡そうとしてもうまくいかなかった…。

resValueに登録して参照(うまくいった)

同じような事をした人がおり、その回答は resValue でリソースとして登録すればいけるというものだったので試したところうまくいった。

  • gradle.properties
    • 変更なし
  • build.gradle
    • 参照のしかたを resValue に変更した
    • これで @string/〜 の形式でアクセスできるようになり、そして文字列としてFacebookSDKに渡されるようなので、無事にKeyが通った
    productFlavors {
        develop {
            resValue("string", "facebook_app_id", getProperty("facebookAppId"))
            略
        }
    }
  • AndroidManifest.xml
        <meta-data
            android:name="com.facebook.sdk.ApplicationId"
            android:value="@string/facebook_app_id" />

localhost:xxxxにはてブしてるコメントを収集してみた

Contents

あらすじ

localhost:8080のはてブを見ると、なんか面白いコメントがいっぱいあったので全部のポートに対してどんなコメントがあるのかさらってみた。

2015年7月時点のもの。

http://localhost:25 No Title - 1user

  • あらまー。

http://localhost:53 No Title - 1user

  • ばっか

http://localhost:80 はてなブックマーク - ソーシャルブックマーク - 1user

  • 劇場版銭維

http://localhost:25 No Title - 1user

  • あらまー。

http://localhost:53 No Title - 1user

  • ばっか

http://localhost:80 はてなブックマーク - ソーシャルブックマーク - 1user

  • 劇場版銭維

http://localhost:445 No Title - 1user

  • (´Д`)ねもい〜

http://localhost:631 ホーム - CUPS 1.2.4 - 28user

  • ぼくの作ったホームページを見に来てください!
  • プリンタの設定に使う。
  • プリンター 設定 管理

http://localhost:901 Samba Web Administration Tool - 2user

  • なし

http://localhost:1337 localhost:1337 - 1user

  • sails lift

http://localhost:2000 localhost:2000 - 2user

http://localhost:2469 localhost:2469 - 0user

  • なし

http://localhost:2534 localhost:2534 - 0user

  • なし

http://localhost:2605 localhost:2605 - 1user

  • なし

http://localhost:2700 localhost:2700 - 0user

  • なし

http://localhost:3000 localhost:3000 - 175user

  • BrowserSyncなう
  • haskell+scottyからきました
  • railsからきました
  • 自分しか見れないサイトにブクマとかいいよね
  • 気づいてしまったので記念ブクマ
  • VagrantRails環境を立ち上げたものの、接続できない…
  • これはワロタ
  • 気付いた。わろたw
  • 記念にw
  • 記念
  • browserSync経由です
  • ブクマ大量についててウケる
  • gulpの窓からこんにちは。
  • ずっとはてブついてるの気になってたので私もしておこうw gulp -> BrowserSyncより
  • BrowserSyncからきますた
  • なんでこんなとこにはてブがwwwww
  • test
  • \祝/
  • Hello World!
  • おれの作ったサイトにこんなにブックマークが!! みたいな気分になれる。
  • Gulp x Browser Sync = ものすごくいい
  • gulpからで、すみません^^w
  • URLに大爆笑してる
  • gulpのBrowser Syncからきました、こんにちは。/gulp仲間が増えてたw。
  • ゆるふわ系癒されちんぽ
  • railsから来ますた
  • fluxibleから
  • ブコメに笑ったw
  • ひさびさにRails
  • rails s
  • 2014年記念パピコ
  • お約束のネタ。
  • Yesodだお
  • 始めましたよろしくお願いしますm(__)m
  • うええい
  • socket.io
  • ruby on railsの開発者さんチーッスww
  • ruby on railsの開発者さんチーッスww
  • ブクマされていることにびっくりしたw
  • やっと動いたよ。。rubyが2.0だとsqlite3のサポートが不十分でエラー出たからバージョン下げた…
  • You’re riding Ruby on Rails!
  • tishadow からきますた
  • [Dev][_localhost]
  • ヽ(・ω・*)/
  • localhost:3000にもはてブ付けられるんだw101番目!
  • Hello Rails!
  • Mojoliciousから
  • さて、順調にRailsのインストールも完了。
  • node.jsふいたw
  • padrino…です..
  • hoge
  • なんて素敵なサービス!
  • やっほー Ruby on Rails
  • ちょっとおもしろいからおれもブクマ。railsです。
  • なんかほっこりする。
  • なんぞ
  • Rails記念ぱぴこ
  • たぶん、一番良く見ているサイト
  • http://localhost:3000/が72人にブクマされてるwwwRailsとNodeのデフォルトポートの結果かw
  • このサイト最高!!!
  • node.jsから来ました
  • Rails入門記念ブクマ
  • rails入れた記念に。
  • RoRで仲間入り!
  • localhostってブクマ出来るんだ…
  • node.js使いでサーセン
  • 和んだ みんな好きだね
  • やったー
  • padrino start のポートもこれ、っていうか結構なフレームワークがこれなんじゃね
  • Webrick on NetBeans の長いトンネルを抜けるとそこは localhost:3000 だった / ポート番号変えればいろんな秘密基地を垣間見れるよ
  • 記念ブクマ
  • Rails使いがツイートしてるのかな。87人もいる。 -
  • 記念ブクマ
  • Yesod Web Framework ですー。
  • こんにちはこんにちは!!
  • Template is missing
  • ごめんなさい。node.jsです。
  • これは吹いたwみんなRails大好きだね!
  • 開発がんばりましょRubyistのみなさん。
  • やあ (´・ω・`) ようこそ、Ruby on Railsへ。
  • @T_Hash node app.jsでエラーはでてないんだよね?VM内からwget
  • こんにちは〜〜〜
  • Ruby on Rails: Welcome aboard
  • rubyist宣言(笑)
  • わろた
  • この場の仲間意識的なのが凄い。
  • ブックマークできるんだ……知らなかった
  • お疲れ様です。
  • わーい、XAMPP LiteでRedmine起動成功!ってなんでブックマークしてるんだよ!
  • おおお。こんにちはrubyistの皆さん。
  • こ、これは!!
  • Rubyist としては抑えておくべき
  • ようこそrubyistのみなさん
  • localhostブックマークされててワロタ
  • やあ(´・ω・`)
  • なんでこんなのブクマされてるんだ…?

http://localhost:3001 localhost:3001 - 3user

  • [Private][Wemake]
  • 登録できたw ちなみにrascutのURLです。

http://localhost:3333 localhost:3333 - 1user

  • brunchから

http://localhost:3389 localhost:3389 - 1user

  • @eri_kata ssh s091xxxx@www.coins.tsukuba.ac.jp -L 3389:(つなぎたいサーバー名).tsukuba.ac.jp:80 これで、

http://localhost:3501 localhost:3501 - 1user

  • なし

http://localhost:3689 .: m t - d a a p d :. - 1user

  • なし

http://localhost:4000 localhost:4000 - 17user

  • Phoenixから
  • jekyllから来ました!!!! 今はPhoenixやってます!!
  • 超絶おもしろサイトです!!!!!!!!!!!!!!!!!!
  • go-tour
  • Hexo から来ました!
  • jekyllからきました!
  • hello, jekyll
  • Jekyll (・ω・)੭ु⁾⁾
  • Jekyllからきました\(^o^)/
  • Jekyllから来ました。
  • Jekyll-Bootstrapから(ry
  • Octopressから(ry
  • Octopressから来ました

http://localhost:4040 localhost:4040 - 1user

http://localhost:4095 localhost:4095 - 1user

  • なし

http://localhost:4565 株主優待一覧 - 1user

  • なし

http://localhost:4567 localhost:4567 - 28user

http://localhost:4848 localhost:4848 - 1user

  • なし

http://localhost:5000 localhost:5000 - 28user

  • plackで遊んでたらflask勢がいっぱいいたでござる
  • われらflask仲間
  • flaskでapiサーバ構築中.flaskから来ている人が多くて嬉しい.
  • flaskから来ました。flaskの人多くて嬉しい。
  • こんにちは〜
  • ゆるふわ系癒されちんぽ
  • Flask練習ナウです!!![flask][localhost]
  • flaskからきました。8000はDjangoだし、8080はtomcatだし。なにかあたらしいもの始めるとみんな落書きしていて嬉しくなるね!!
  • (´・ω・`)やあ
  • ここは私のホームページですよ!!
  • foreman
  • plackup!!!
  • どうも
  • foremanから来ました!
  • どうもどうも。
  • foreman!!
  • flask!!
  • flask!!!
  • フラスク!!
  • Plackからこんにちは
  • 5000番はFlaskだけなのかな
  • Flaskからこんにちは
  • ubuntuchromeからテスト

http://localhost:5555 localhost:5555 - 2user

  • なし

http://localhost:7144 PeerCast on 7144 - 1user

  • なし

http://localhost:7464 localhost:7464 - 1user

  • なし

http://localhost:7743 No Title - 1user

  • ボディハザード聞いた事あるぞ

http://localhost:7777 localhost:7777 - 1user

  • なし

http://localhost:8000 localhost:8000 - 41user

  • イースターエッグを見つけたときのような嬉しさがある
  • laravel4かra
  • pyhon -m SimpleHTTPServer
  • Yo
  • lunny/tango Package tango is a micro & pluggable web framework for Go. Then visit on your browser. Of course, tango support struct form also. Tags: feedly, ifttt, recently read, saved for later from Pocket http://bit.ly/1AfWf8L January 15, 2015 at 04:50AM via IFTTT
  • Mac であればターミナルから “python -m SimpleHTTPServer” を実行すると、カレントディレクトリ以下が でアクセスできます。
  • PreprosのLive Previewから来ました
  • gulp-webserver から記念カキコ
  • ベーグラントのレールズインスタンスをこのポートでフォワードしてます
  • 記念カキコ
  • ゆるふわ系癒されちんぽ
  • python -m SimpleHTTPServer から
  • ブクマすんなよw一瞬ビビったわw/grunt-connectからきました
  • ワロタ
  • php -S から
  • 記念カキコ
  • play
  • SimpleHTTPServer
  • python -m SimpleHTTPServer
  • python -m http.serverから来ました。
  • 使うよね python -m SimpleHTTPServer
  • FuelPHPやった
  • ab -c5 -n10000
  • python3 -m http.server
  • python manage.py runserver
  • python manage.py runserver
  • hg serve
  • python -m SimpleHTTPServer
  • python33 -m http.server
  • 誰だこんなのブクマしたのw

http://localhost:8001 localhost:8001 - 0user

  • なし

http://localhost:8002 Language (API) \ Processing 1.0 (BETA) - 2user

  • Processingリファレンス (local)

http://localhost:8008 localhost:8008 - 0user

  • なし

http://localhost:8020 localhost:8020 - 0user

  • なし

http://localhost:8042 localhost:8042 - 0user

  • なし

http://localhost:8073 localhost:8073 - 0user

  • なし

http://localhost:8080 localhost:8080 - 97user

  • どこから来たんだっけ…。
  • とりあえずGitBucket動かしてみた記念。
  • Yo
  • chef-soloでapacheセットアップ記念
  • ゆるふわ系癒されちんぽ
  • Jenkins:環境セットアップ 起動が成功したら、 にアクセスすると Jenkins の画面が表示される。 Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket http://bit.ly/1wQ7Qdc July 21, 2014 at 08:26PM via IFTTT
  • test
  • vert.xから来ました。
  • こんにちはJenkinsさん
  • POPFileコントロールパネルのURLなのでブクマ。迷惑メールを選別する。
  • tomcat, jenkins, nginx, あと何があるかな?
  • @shodai910 私のも
  • Hello, Jenkins!
  • ここにはJenkinsさんが居るんだろ?
  • なぜここがわかった
  • Tomcatインスコ記念ぶくま(^ω^)
  • GAE/Pから来ましたw
  • [ruby] test http
  • Tomcat
  • おれのひみつきち
  • 日記帳?
  • nginxからきました
  • :8080
  • GAEからきました!
  • こんなとこブックマークされてんのか
  • GAEから来ました
  • GAE動いた!
  • Jenkins 先生記念ブクマ
  • こんな所もブックマークされているんだw
  • hudson先生のとこからきました
  • こんな所もはてブされてるんだw
  • liftから来ますた
  • lift + GAE/Jからきますたw
  • 同じくGAE/Jから来ますた
  • Google App Engine のテストページが・・・・・・
  • Tomcatユーザー会?Tomcatに限らないか。
  • 黒板を引っ掻く音が、程よく混ざった音楽。。。

http://localhost:8081 IIS7_localhost - 4user

  • なし

http://localhost:8084 kazkiScope - 0user

  • なし

http://localhost:8087 localhost:8087 - 1user

  • なし

http://localhost:8088 localhost:8088 - 3user

  • BEAR.Sundayで開いた人は★を

http://localhost:8090 localhost:8090 - 0user

  • なし

http://localhost:8093 localhost:8093 - 0user

  • なし

http://localhost:8104 localhost:8104 - 1user

  • なし

http://localhost:8123 Minecraft Dynamic Map - 4user

  • なし

http://localhost:8124 localhost:8124 - 1user

  • なし

http://localhost:8808 RubyGems Documentation - 6user

  • @tenkazu 普通に
  • 試しにlocalhostもブックマークしてみる

http://localhost:8888 localhost:8888 - 27user

  • localhostはてブがそこそこあってびっくりw
  • localhost にこれほどブクマがあるとは
  • よくみるサイト
  • おまえら俺のページ勝手に見るな
  • localhost:8888は私の(ry
  • wow
  • GAEタグも付けとこ
  • slim3タグがついてるw
  • slim3

http://localhost:9000 localhost:9000 - 10user

  • via Harp
  • この番号すき
  • m(_ _)m
  • ポート毎にぶくまするのね。そうなのね。

http://localhost:9005 localhost:9005 - 1user

  • aaa

http://localhost:9090 localhost:9090 - 0user

  • なし

http://localhost:9200 localhost:9200 - 1user

  • elasticsearchでインデックスのバックアップ、リストア 19 ストック 0 コメント この投稿をストックする esclientをインストール sudo easy_install esclient 全インデックスをまるごとバックアップ esdump –url 特定のインデックスをバック

http://localhost:9292 localhost:9292 - 13user

  • なんずぉおおおああああこのサイトうぅぅはあぁぁぁああああああ
  • めっちゃすごいサイトだ……
  • 最近熱い
  • Ruhoh製サイトのローカル確認用localhost
  • ^o^ < クニクニ
  • (・ω<)ノ
  • こんにちは!! こんにちは!!
  • 国国
  • rackのデフォルトポ〜ト
  • どうも

http://localhost:9966 localhost:9966 - 0user

  • なし

http://localhost:10000 localhost:10000 - 1user

  • なし

http://localhost:10005 localhost:10005 - 0user

  • なし

http://localhost:10041 localhost:10041 - 1user

  • Groongaの細かいことを知らなくても使えるWebブラウザー上で動く管理ツール GroongaにはWebブラウザーで動く管理ツールが付属しています。GroongaをHTTPサーバーとして起動して にアクセスすると使えます。詳細はGroongaでブラウ

http://localhost:10080 localhost:10080 - 0user

  • なし

http://localhost:15672 localhost:15672 - 1user

  • なし

http://localhost:18080 localhost:18080 - 1user

  • なし

http://localhost:20080 localhost:20080 - 1user

  • なし

http://localhost:28017 localhost:28017 - 0user

  • なし

http://localhost:34522 localhost:34522 - 2user

  • なし

http://localhost:41952 localhost:41952 - 1user

  • なし

http://localhost:46552 localhost:46552 - 0user

  • なし

http://localhost:49152 localhost:49152 - 1user

  • なし

http://localhost:50141 localhost:50141 - 1user

  • @YMayaya

http://localhost:53540 localhost:53540 - 0user

  • なし

http://localhost:58080 localhost:58080 - 1user

  • なし

http://localhost:59012 localhost:59012 - 1user

  • なし

http://localhost:64664 localhost:64664 - 0user

  • なし

Gmail経由でのstmp送信でUsername and Password not accepted 534-5.7.14

あらすじ

Rubyスクリプト内にてGmail経由でsmtp送信しようとしたら Username and Password not accepted と表示されてしまった。

何度も施行していると、「ログイン試行をブロックしました」というメールが届き、エラーも 534-5.7.14 <https://accounts.google.com/ContinueSignIn(以下略) と変わった。

smtp.rbcheck_auth_response メソッドでauthに失敗している模様。(該当メソッドでメールアドレスとパスワードを puts してみたけど、あってる=これを使用してブラウザログインはできる)

解決策

二段階認証設定をオンにし、アプリパスワードを発行。

自分のメールアドレスとアプリパスワードで認証するとメール送信できた。

ちょっと古いが、二段階認証かつアプリパスワード使用でも、そもそも無理という話もある。