カテゴリー: テクノロジー

保護されたExcelシートの対処法

こんにちわ。
リエです。
 

もうすぐ7月。夏だ!海だ!年度更新だ!
とうわけで、年度更新の季節です。
 

年度更新の提出書類で「労働保険料・一般拠出金申告書」というものがあるのですが、いつも厚生労働省のサイトから計算支援ツール(Excel)をダウンロードして使用しています。

 

このExcelシートは計算式が入っているので、集計表に入力すると別シートの記入イメージに反映され、その内容を申告書に転記したら申告書が完成するので、便利で毎年使っています。
ですが、いざ今年の分をダウンロードして入力して使ってみると一部数字が反映されないということがおきました。
入力できないと申告書が作成できないぞ。ということで原因を探して見つかったので、今回はそのことを書きたいと思います。
 

最初はどうしたのか

いつも作成のときは、ダウンロードしたExcelシートをGoogleスプレッドシートにインポートして使用しています。
Googleスプレッドシートで作成してると表示がおかしな箇所があったので、インポートなので互換が出ておかしくなったのかな?と思い、Excelシートに直接入力することにしました。
 

直接入力しても数字は反映されないという問題勃発

集計表に直接入力しても一部数字が記入イメージシートに反映されません。
なぜだ?と数字が反映されない箇所を見てみると保護がかかっている。
保護を外そうにも、制限ありで触れない。。ということでどうしたらいいのかと考え込んでしまいました。
 

ヘルプをお願いする

自分だと解決が難しいなということでプログラマさんにヘルプ。
ここで解決するのです\(^o^)/
 

原因と解決方法

ネットからダウンロードしたファイル(今回の場合はExcel)を開くと、「保護されたビュー」というモードで開くことがあります。

添付ファイルやネット上から取得したファイルを開くと「保護されたビュー」というモードで開くことがあります。これは有害なコンテンツが埋め込まれている可能性があるため読み取り専用で開くモードです。

引用元:http://office-qa.com/Excel/ex161.htm

このモードで開くと保護がかかったままなので、入力しても正常に数字が反映されないというようなことが起こるのです。
そこで保護されたビューをオフにすれば、保護が解除され正常に使用することができます。
弊社は以下サイトを参考にさせていただきました。
保護されたビューを解除(無効)にする方法
※同様の事例すべてがこの方法で解消するわけではありません。
※操作は自己責任でお願いいたします。
 

この方法をプログラマさんが調べて試してくれて、無事申告書を完成させることができました。(感謝!)
同じようなことで、お悩みの方がいましたら少しでもお役に立てれば幸いです。

Webスクレイピングをはじめてみました(1)

 

こんにちは、長年Webデザインに携わってきましたがプログラミングがなかなか覚えられないLQヒロシです。

今回は一念発起して、流行りのPythonWebスクレイピングをしながらプログラミングを勉強していこうという試みです。

なぜWebスクレイピングなのか?

 

PHPのちょっとした修正や、jQueryを使ったクリックやリサイズの簡単なイベントぐらいはできるけど、そこから先になかなか進めない・・。デザイナーなんだしJavaScriptUI周りのエフェクトとかを実装できるようになりたいと思ってはいるのですが、UI周りってイベント同士が絡んだりすると途端に難しくなってなかなか続かないのが目下の課題だったりします。

簡単なアウトプットを段階的にこなしていって、ファンクションのまとめ方だったり、データのやり取りなどプログラミングの勘所を掴んでいけるのが理想的ですよね。

Webスクレイピングであれば、WebサービスのAPI活用・クローリングでのデータの収集、データベースへの保存や取り出し、データの加工の作成という一連の流れが小規模なカタチで勉強できるので、体系的にポイントを抑えた勉強ができそうです。データを加工するのに正規表現も使うことになりそうだし。

 

プログラミング言語はpythonを使用し、ツイッターと連携して画像を収集しギャラリーサイト作成を最終的な目標としたいと思います。

 

第一回目は、スクレイピングとPythonについてご紹介できればと思います。

そもそもWebスクレイピングとは?

 

厳密にはクローリングとスクレイピングに分けることができます。

・クローリング
WebサイトのハイパーリンクをたどってWebページを探す作業

・スクレイピング
Webページから必要な情報を抜き出し、整形し直す作業

例えば、電子書籍の販売サイトから書籍情報を抜き出して価格を比較、最安値の情報のみをまとめるなど、要するに複数のWebサイトから任意の情報だけを抜き出し、雑多なデータを整理して有益な情報にすることでしょうか。

Pythonって何?おいしいの?

 

GoogleFacebookで採用されていて、機械学習やIoTの事例も多い現在最も旬な言語とも言われていますので、おいしいです。他のプログラミング言語同様、WindowsMacOSLinuxなどのプラットフォームで動作でき、環境構築・Webシステムの開発~データ解析までひとつの言語で実現できることから世界中で広く使われています。

Pythonの特徴

 

文法が読みやすい

 

プログラムは一度書かれた後も他の人に読まれるもの。pythonでは「シンプルで読みやすいコードが書けること」という設計思想があり、コード上の装飾が極力少なくなるような記述方法になっています。少し文例を見てみましょう

実行結果:hogeです

 

このように文の終わりに閉じタグが必要なく、制御構文では影響する範囲を括弧で囲む代わりにインデントで定義。変数は代入するだけで宣言されたことになるのでとてもすっきりとして読みやすいコードになります。

Pythonってなんだか難しそうなイメージがありましたが、PHPなどと比べても別段特殊な書き方をしているわけでもなく、文法が見やすいので非常に馴染みやすく感じました。教育の現場でも採用されていたりするそうで、プログラミング初心者にも学びやすい言語だと思います。

 

・導入が簡単!

 

MacならHomebrewでインストールするだけですぐに使えました。コンパイルする必要もないので、ぶっちゃけ笑ってしまうぐらい早いですwww

(以前PHPを導入した際は、php.iniファイルの設定を調整したり、事前にDBを用意したりと面倒だった思い出があります。)

 

・豊富なライブラリ

 

Pythonには正規表現、数学関数、通信プロコトルなどの標準ライブラリが非常に豊富でインストールするだけで利用が可能です。さらにサードパーティ製のライブラリも豊富に提供されています。最近ではディープラーニング用のTensorFlowなどが有名ですね。データ解析のライブラリも強力で、スクレイピングしたデータをインフォグラフィックとして表現できたりもします。

 

それではPythonの導入方法を見てみましょう

 

Pythonは2系と3系があり、現在は3系が主流になりつつあります。2系と3系の間には互換性がありません。Macではデフォルトでインストールされていますが2系だったりするので、Homebrewで3系をインストールします。

 

 

バージョンを確認してみましょう

 

Homebrewでインストールしたものが参照されているか確認します。

と表示されれば準備は完了です。

 

では、対話方式でプログラム実行できる「インタラクティブシェル」でPythonを動かしてみます。やり方はターミナル上で「python3」と入力するだけですw

立ち上がったら上記のようなメッセージが表示され、コマンド受付状態になります。では、構文を入力してみましょう。

はい、これだけですw簡単ですw

 

終了する時は

または

これでbashに戻ることができます。

 

第一回目は以上になります。説明や導入を中心に駆け足でご紹介してきました。
まだまだ勉強中の身のため、上手く伝えられず分かりにくい部分が多々あると思いますが、次回からは実際にPythonを利用して少しでも魅力をお伝えできればと思います!

NginxをHTTP/2対応する際のポイント

NginxをHTTP/2に対応するにはALPNに対応する必要があり、下記ソフトウェアバージョンの条件を満たす必要があります。

  • Nginx 1.9.5以上であること
    ※但し、その後のバージョンでHTTP/2に関する不具合の修正がある為、ご注意ください。
  • OpenSSL 1.0.2以上であること

導入されているソフトウェアバージョンについては、下記コマンドにて確認可能です。

$ nginx -V

下記のようにバージョン条件が満たされた出力がされていれば問題ありません。

nginx version: nginx/1.10.3 (Ubuntu)
built with OpenSSL 1.0.2g 1 Mar 2016
TLS SNI support enabled

過去にHTTP/2対応したと思っていてもOpenSSLのバージョンが低く、正しくHTTP/2に対応できていないということがあるのでご注意ください。

正しく対応できているかの確認はchromeのDeveloper toolにてProtocol列を表示し、確認してください。

問題がない場合には[h2]と出力されています。

 

パスワードを使わなくてもWeb認証できる?「WebAuthn」

WebAuthnが、Web認証の新たなスタンダードになるかもしれません。

FIDO Alliance and W3C Achieve Major Standards Milestone in Global Effort Towards Simpler, Stronger Authentication on the Web
https://www.w3.org/2018/04/pressrelease-webauthn-fido2.html.ja

本日発表された新しいFIDO2仕様と、それをサポートする主要ブラウザの取り組みは、全てのプラットフォームやデバイス間でFIDO認証が不偏のものとして存在する第一歩を踏み出したことを示しています。データの侵害とパスワードなどの資格情報の盗難は増加し続けていましたが、これからサービスプロバイダは、脆弱なパスワードやワンタイムパスコードに頼ることなく、全てのウェブサイトやアプリケーションで フィッシング耐性を持つFIDO認証を実装する時が来たのです。

 
発表によると、生体認証(指紋や顔、虹彩等)や、USB、BluetoothまたはNFCを介した外部認証ツールを利用し、パスワードやワンタイムパスコードを使用せずにWeb認証が可能となるそうです。
現在、W3Cにおける「勧告候補」となり、すでに主要ブラウザであるChromeやFirefox、Microsoft Edgeがサポートを発表しています。
 
生体認証と聞いてスマートフォンのロック解除を思い浮かべる方が多いのではないでしょうか。
寝起き顔で認証されずに悲しみにくれた経験をした方もいるかもしれません。
Webアプリケーションもそれらと同じように手軽にログインできるようになれば、パスワードそのものの管理の不便さ、煩わしさを嘆く必要はなくなります。
 
W3Cでは実装サンプルが公開されています。
https://www.w3.org/TR/webauthn/#sample-registration
 
Firefox Nightlyにおいては、about:configにsecurity.webauth.webauthnという項目がすでに存在していることが分かります。

firefox nightliyのabout:config

もうほぼ実現するとみていい状況だと思われます。

検索してみるとDemoサイトも出てくるのですが、試してみるとデバイスの接続を求められるアラートが表示されるところから進めませんでした。
FIDO・CTAPに対応した認証用アプリや機器が必要なのだと思われます。
また機会をみて試してみたいと思います。
 
ところで、Appleは4月現在のところだんまりです。
珍しいことでもないので近いうちに何らかの発表があるかもしれません。

業務が捗る便利なツール

こんにちわ。
リエです。
 
日々、お仕事をする中でよく使うツールがあります。
今回はそれを紹介したいと思います。
 
とくべつなものではなくわりとポピュラーなものが多いかと思いますが、おつきあいくださいませm(_ _)m

 

Google URL Shortener

https://goo.gl/
短縮URLを生成するツールです。
メールでURLをよく送付するのですが、URLって長いものが多いのでメールを見やすくするために短縮URLにして送付することが多いです。
その時使うのが、このツールです。
短縮したいURLを貼るだけで簡単に生成できるので、重宝しています。
※Google URL Shortenerは2019年3月30日にサービス終了します。
 

QRコード[二次元バーコード]作成

https://www.cman.jp/QRcode/
QRコードを簡単に作成できるツールです。
これも、QRコードにしたい文字を入力すると、簡単に作成することができます。
オプションでサイズやセル色、囲み文字などを指定して作成することができるので、無料のツールとしてはとても優秀だと思います(*´∀`*)
 

文字列ジェネレーター

https://lazesoftware.com/tool/strgen/
文字列生成ツールで、開発したシステムの入力テストの時に利用します。
弊社のプログラマさんに教えてもらいました。
 

Macのショートカットキー一覧

https://support.apple.com/ja-jp/HT201236
これはツールではないですが。。
よく使うショートカットキーは覚えれるのですが、あんまり使わないショートカットキーは忘れがちなのでこれをたまに見ます。
ショートカットキーを駆使すると業務スピードが上がります。
 

HEIC写真をJPGに変換するフリーソフト

https://www.apowersoft.jp/heic-to-jpg
わたしはiPhoneXを使っているのですが、iPhoneXで撮った写真ってJPGじゃなくHEICになるんですね。
撮った写真をブログで使ったり誰かと共有する時は、JPGに変換する必要があるので、このフリーソフトを使っています。
対象の写真をドラッグしてアップするだけで、JPGに変換してくれるので大変便利です。
 
他も都度使うツールはありますが、これらが日々よく使うツールです。
本当に便利でありがたいです(´;ω;`)
また便利なツールがありましたら、ご紹介したいと思います。