Skip to content

Instantly share code, notes, and snippets.

@pizzacat83
pizzacat83 / pyknp_memo.md
Last active February 14, 2023 11:19
pyKNPについてのメモ(自分用)
javascript:void(function(){var o='<!DOCTYPE html><html><head><meta charset="utf-8" /><title>お気に入り</title></head><body style="font-family: sans-serif;"><h1>お気に入り</h1>図書館を選択:<select id="library" style:"border: 1px #ccc; border-radius:5px;"></select><button id="apply">適用</button><table id="favorites-table"><tr><th>資料名</th><th colspan="2">状態</th></tr></table></body></html>';document.write(o);var p=[];function getConditions(a){var b=new XMLHttpRequest();b.open("GET","https://opac.dl.itc.u-tokyo.ac.jp/opac/opac_details/?bibid="+a,false);b.send();var c=(new DOMParser()).parseFromString(b.responseText,"text/html");var d=c.getElementById("cantable").getElementsByClassName("hold-area")[0].children;var e=[];for(var f of d){var g=$(f).children("span").text().replace("キャンパス","");var h=$.map($(f).find("td.hold_detail_1:contains('配架場所')").next(),(x)=>{return x.innerText.replace(/・.*/,"").trim()});var j=$.map($(f).find("[id^=blstat_detail_BL]"),(x)=>{return x.id.match(/BL[0-9]+/)[0]});var k={};for(var i=0;i<j.length;++i){b.o
@pizzacat83
pizzacat83 / g0.svg
Last active September 12, 2018 18:42
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@pizzacat83
pizzacat83 / ut_zenki_news_filter.js
Created December 3, 2018 03:43
教務課からのお知らせ IFTTT Platform用Filterコード
if(Feed.newFeedItem.EntryContent.indexOf("http://www.c.u-tokyo.ac.jp/zenki/news/kyoumu/images/common/news_z_secondyear.gif")!=-1)Slack.postToChannel.skip();
function getAllFiles(targetFolder, pathstr){
var filesList = [];
var files = targetFolder.getFiles();
while(files.hasNext()){
var file = files.next();
filesList.push([file,pathstr+"/"]);
}
var childFolders = targetFolder.getFolders();
var properties = PropertiesService.getScriptProperties();
var TARGET_ROOT_ID = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"; // ルート
var TARGET_FREQ_ID = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"; // よく更新されるフォルダ
var rootFolder = DriveApp.getFolderById(TARGET_ROOT_ID);
var ct = properties.getProperty('updateCheck.rootContinuationToken');
var itr = ct ? DriveApp.continueFolderIterator(ct) : rootFolder.getFolders();
var id;
do{
if(itr.hasNext()){
// つぎのフォルダがある
if (updateFileMap.length != 0) {
var slackApp = SlackApp.create(slackAccessToken);
if(updateFileMap.length <= 20){
var attachments = [];
for( key in updateFileMap ){
var item = updateFileMap[key];
var title = item.updateType + ":"+item.filename;
var title_url = item.url;
var text = item.lastUpdate?item.updateType+'日時:' + Utilities.formatDate(item.lastUpdate, "JST", "yyyy-MM-dd HH:mm:ss") + '\n':''
var color = item.color;
var properties=PropertiesService.getScriptProperties();
var slackAccessToken = properties.getProperty('slack-access-token');
function submitForm(e){
var slackApp = SlackApp.create(slackAccessToken);
var itemResponses = e.response.getItemResponses();
slackApp.postMessage("###channelID###", itemResponses[0].getResponse(), {'username':'Slack意見箱'});
}
function doPost(e){
console.log(e.parameter.trigger_word);
var slackApp = SlackApp.create(slackAccessToken);
if(e.parameter.trigger_word=="formula:"){
var chId=e.parameter.channel_id;
var query = e.parameter.text.substr(e.parameter.trigger_word.length).trim();
var url="https://chart.googleapis.com/chart?cht=tx&chl="+encodeURIComponent(query.replace(/&amp;/g,'&').replace(/&lt;/g,'<').replace(/&gt;/g,'>'))+"&ts="+String(Date.now());
slackApp.postMessage(chId, url, {'username':'formula','icon_url':"http://icons.iconarchive.com/icons/alecive/flatwoken/512/Apps-Libreoffice-Math-B-icon.png"});
}
}
import MeCab
import math
tagger = MeCab.Tagger("")
node=tagger.parseToNode(sentence)
dic={}
ad={}
g=open("corpus/wiki_wakachi.txt","w")