不定期戯言

戻る

« | 2019 | Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec | »

古いページ

2019.02.09 (Sat)

スクレイピング

・最近『Pythonによるスクレイピング&機械学習』(クジラ飛行机著,ソシム)を読んでいる。題材として自分のサイトを使ってみたりする。たとえば過去の発表資料のページからタイトルを取得してみたり,このページのコンテンツをまとめてダウンロードしてみたり。今まで無駄にタイトルや日付をSPAN要素にしてCLASS名をつけていたのだけど,それが功を奏した感じだ。そうしてみると,このあたりも自動生成するようにしたいなあ。

・最近のサイトは自動生成される部分が多いから,要素を指定して値を取得するのはやりやすいような気がする。少なくとも手書きのサイトよりは。

コメント(0)

コメント投稿

日本語の文字が入っていないものは受け付けません。URL欄は使わないでください。

Name:
URL (NEVER USE):
Comments:

トラックバック(0)

トラックバック用URL: https://watayan.net/blosxom.cgi/computer/201902090001.trackback

2019.01.29 (Tue)

橋本治死去

・久しぶりにマストドンに繋いでみたら,橋本治がなくなったという投稿が流れてきた。「桃尻娘」からはじまって,主にエッセイ的なものを十数冊読んだが(有吉佐和子の本を何冊か読んだのも彼の影響),そもそも彼を知ったのは編み物からなんだな。学生時代,編み物に手を出そうと(かぎ針は子供の頃にやっていたので,棒針がやりたかった)適当に買った本の最初のページで,彼のインタビュー記事が紹介されていた。途方もなく細かい編み込みをしたセーターの写真があって,なんとなく憧れたものだった。編み込みってドット絵というかデジタルに通じるものがあるから気に入ったのかな。

・文芸的な方面でのコメントはたくさんあると思うので,全然違う話で書いてみた。彼が有吉佐和子に書いた追悼文にならって,「いつまでもお元気で」と見送りたい。

コメント(0)

コメント投稿

日本語の文字が入っていないものは受け付けません。URL欄は使わないでください。

Name:
URL (NEVER USE):
Comments:

トラックバック(0)

トラックバック用URL: https://watayan.net/blosxom.cgi/misc/201901290001.trackback

2019.01.23 (Wed)

出席番号の変わり目で改ページ

・マージした表で明らかにおかしいところを直して,出席番号順にソートして印刷…したいのだけど,改ページを入れまくらなければいけない。Excelだったらわかるんだけど,LibreOffice Calcだとどうしていいのかわからない。あちこち検索して,改ページがあるかどうかが調べられることはわかったけど,それを設定する方法がわからない。結局Option VBASupport 1を指定してExcelと同じ書き方をすることでなんとかなった。なんとなく負けた気持ち。

・(追記)「IsStartOfNewPageプロパティでいける」とのコメントをいただいた。確かにプロパティだから,値をセットしてもいいんだよな。そんなわけでこんなコードでうまくいった。Col=3は,キーになる列がD列だからということ。

 Sub Main
  Col= 3
  Doc =ThisComponent
  Sheet = Doc.Sheets(0)
  pre = Sheet.GetCellByPosition(Col, 1).Value
  r = 2
  Do
    Row = Sheet.Rows(r)
    Cell = Sheet.GetCellByPosition(Col,r)
    if Cell.Value <> pre then
      pre = Cell.Value
      Row.IsStartOfNewPage = True
    Else
      Row.IsStartOfNewPage = False
    End if
    r = r + 1
  Loop While pre<>0
End Sub

コメント(2)

参考まで wrote at 2019-01-23 21:46:

LibreOffice Basicならば
LibreOffice macro IsStartOfNewPage
で検索

わたやん wrote at 2019-01-23 22:16:

あ,そうか。あれはプロパティだからbooleanな値をセットしてやればいいんですね。検証して追記します。ありがとうございます。

コメント投稿

日本語の文字が入っていないものは受け付けません。URL欄は使わないでください。

Name:
URL (NEVER USE):
Comments:

トラックバック(0)

トラックバック用URL: https://watayan.net/blosxom.cgi/computer/201901230001.trackback

2019.01.19 (Sat)

表の結合

・生徒のLT大会が終わったので,評価シートをマージしなくてはいけない。LibreOffice calcの表をそのまま全員分貼り合わせればいいのだが,こんなの手作業でやりたくない。最近Pythonを勉強中なので,それを使ってざくっとコードを書いてみた。odfpyモジュールを使ってみたが,肝心の表読み出しのところが少し面倒だった。

import pathlib
from odf import number,text,table,opendocument

doc = opendocument.OpenDocumentSpreadsheet()
tbl = table.Table(name="評価シート")

p = pathlib.Path(".")

for f in p.glob("2018*.ods"):
    d = opendocument.load(str(f))
    tables = d.spreadsheet.getElementsByType(table.Table)
    for t in tables:
        for r in t.getElementsByType(table.TableRow):
            row = table.TableRow()
            tbl.addElement(row)
            for c in r.getElementsByType(table.TableCell):
                cells = 1
                repeat = c.getAttribute("numbercolumnsrepeated")
                vt = c.getAttribute("valuetype")
                if repeat:
                    cells = int(repeat)
                while cells > 0:
                    cell = table.TableCell(value=c, valuetype=vt)
                    cell.addElement(text.P(text=c))
                    row.addElement(cell)
                    cells -= 1

doc.spreadsheet.addElement(tbl)
doc.save("merge",True)

(こっそり修正)

コメント(0)

コメントの受付は終了しました。

トラックバック(0)

トラックバックの受付は終了しました。

2019.01.14 (Mon)

WaPENの関数呼び出し

・関数呼び出しが今ひとつうまくいかない。とりあえずadd_functionブランチの方では関数呼び出しができるようにはなったけど,ステップ実行や関数内での入力ができないまま。このあたりはうまく整理すればなんとかなるような気はするのだが…。setZeroTimeoutを使わずに別な方法を使えばいいんだろうか。

コメント(0)

コメントの受付は終了しました。

トラックバック(0)

トラックバックの受付は終了しました。

2019.01.13 (Sun)

丁提督

・艦これの冬イベントは丙で行こうと思っていたが,E-3で諦めて途中から丁に切り替えて終了。報酬艦である峯雲と日進の他は浜波と占守が来てくれたから,掘りはもういいや。

コメント(0)

コメントの受付は終了しました。

トラックバック(0)

トラックバックの受付は終了しました。

2019.01.07 (Mon)

なんとか回復

・年が明けて,1日か2日あたりから腹具合が良くなかった。ときどき熱っぽかったりもして。そんなわけでごちそうにあまり手を伸ばせず…昨日1日たっぷり寝てたおかげでだいぶ回復した。体重もちょっと減ったけど,すぐ戻るんだろうなあ。

コメント(0)

コメントの受付は終了しました。

トラックバック(0)

トラックバックの受付は終了しました。

2018.12.31 (Mon)

Facebookにシェア

・このブログに投稿したときは,アップロードと同時にtwitterにその通知を投稿している。以前はそれをFacebookに流していたのでそちらでもシェアできていたのだが,仕様が変わってそうはいかなくなった。仕方ないから手打ちをしようかと思ってブログの画面を見ると,下にシェアとかのボタンがある。そういえば設置したっけなあと思って試しに押してみると,ちゃんと機能してくれた。これは意外。

コメント(0)

コメントの受付は終了しました。

トラックバック(0)

トラックバックの受付は終了しました。

2018.12.30 (Sun)

TPP発効

・というわけで,著作権法は改正されるわけか。保護期間が著作者の死後70年になったり,親告罪でなくなるものがあったり,詳しいことを勉強しないといけないな。

コメント(0)

コメントの受付は終了しました。

トラックバック(0)

トラックバックの受付は終了しました。

2018.12.27 (Thu)

教員免許更新講習

・情報処理学会の教員免許更新講習というわけで名古屋文理大学へ。今までも部分的に補助講師をやったことはあったが,今回は午後がまるっと私の時間。事前にだいぶ準備をしたつもりだったのだが,時間を少し余らせてしまった。そんなわけで最後にpaiza.ioやpaiza.jpのデモとかやってみたりする。

・最初にガチャのシミュレーションをやったのは,WaPENに慣れてもらうことの他に,センター試験問題への橋渡しであったり(配列をなめてフラグを立てたりするところとか),こういうシミュレーション自体が教材になるというデモだったりしたのだが,うまく伝わっただろうか。

・アンケートを見たが「難しすぎた」という感想がいくつかあったのが残念。難しいという印象を持たれることは想像していたが,「すぎた」となってしまったのはネタの練り込み具合が足りなかったということだろう。

コメント(0)

コメントの受付は終了しました。

トラックバック(0)

トラックバックの受付は終了しました。

古いページ