Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

login: Yukicoder via Twitter or password #276

Closed
kmyk opened this issue Jan 26, 2019 · 7 comments
Closed

login: Yukicoder via Twitter or password #276

kmyk opened this issue Jan 26, 2019 · 7 comments
Assignees

Comments

@kmyk
Copy link
Member

kmyk commented Jan 26, 2019

私はGitHub経由のloginなので、これらは手元での動作確認すらできず実装が不可能です。なのでその方法でログインしてる人からのプルリク待ち

@fukatani
Copy link
Contributor

私twitterでした。ひとまず、assigneesを私とします。(すぐには取り掛かれないので、奪ってもらっても構わないです。)

@fukatani
Copy link
Contributor

fukatani commented Jan 28, 2019

twitterは規約でスクレイピングを禁止してるので、許可を得る必要があるとのことでした。
あとは、他のブラウザでログインしたcookieを、ユーザーがブラウザにエクステンションをダウンロードして手で取得してコピーして、という方法もあるかもしれません。できたとしても、ユーザーにそれなりに負担がありますが。

参考 (kaggleはAWSなどブラウザが開けない環境下からデータダウンロードしたいときに、
ローカルでブラウザでログインしてcookieを取得、AWSにコピーしてwget --load-cookiesでダウンロード。):
https://stackoverflow.com/questions/45261190/how-to-get-kaggle-competition-data-via-command-line-on-virtual-machine

どういう方針がよいか、お聞きしたいです。

@fukatani
Copy link
Contributor

fukatani commented Jan 28, 2019

スクレイピングの許可とればよいのでメールするだけならタダだし、@kmykさんがよければtwitter社にメールして聞いてみようかなと思います。

@kmyk
Copy link
Member Author

kmyk commented Jan 28, 2019

「cookieからsession情報をコピペ」は良い方針だと思いました。私としてはこれを推したいです。
理由としては以下です。

  • ユーザ視点だと「GitHubやTwitterのパスワードを入力するのこわい」という気持ちがある (重要)
  • 同時にすべての種類のログイン方法に対応できるので今後増えたときが楽
  • cookieの登録だけなのでメンテが容易。サイトの更新で壊れない

また、もしTwitter経由でログインするとしてもTwitterへの許可は不要だと思います。

「twitterは規約でスクレイピングを禁止してる」と言ったときは通常「TLのデータ取得をAPI経由せずにやるのをやめろ」の意味のはずです。実際、規約中の言及は以下のようなもので、クロールについての禁止となっています。

NOTE: crawling the Services is permissible if done in accordance with the provisions of the robots.txt file, however, scraping the Services without the prior consent of Twitter is expressly prohibited

一方で通常のブラウザからのアクセスは許可されているはずで、我々のアクセスも「エンドユーザからの手動での操作によって」行われるため、この点について許可を取る必要はないと思います。

@fukatani
Copy link
Contributor

ありがとうございます。色々とわかっていないので、勉強になります。
ブラウザだってhtml解釈してるはずですものね。

cookieでのログインですが、普通にcookie.jarにコピペするだけでできました。
ドキュメントを書くので少々お待ちを。

@kmyk kmyk changed the title login: Yukicoder via Twitter or password login: login using session tokens Jan 30, 2019
@kmyk
Copy link
Member Author

kmyk commented Jan 30, 2019

名前はこっちの方が適切な感じになってきてたので修正

(「session情報を使ってログイン (の処理を実行) する」に読める書き方は正確でなくて「session情報を使ってログイン (されている状態に) する」であるべきだけどまあ気にしない)

kmyk added a commit that referenced this issue Feb 1, 2019
#276: add a message to tell the option that login with session tokens
fukatani added a commit that referenced this issue Feb 2, 2019
#276: fix some parts of LOGIN_WITH_COOKIES.md
@kmyk kmyk changed the title login: login using session tokens login: Yukicoder via Twitter or password Feb 7, 2019
@kmyk
Copy link
Member Author

kmyk commented Feb 7, 2019

名前を戻していったん閉じたい
話が混じらないように新しいissueを切るべきだと思うので

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

No branches or pull requests

2 participants