Life, Education, Death

プログラミング以外でも思ったことをつらつらと書きたい

iGoogleガジェットを作ってる

外部のサイトをクリッピングしたいのです

gadgets.io.makeRequestを使うと任意のサイトの一部を持ってこれる。

   var params = {};
   params[gadgets.io.RequestParameters.CONTENT_TYPE] = gadgets.io.ContentType.DOM;
   var url = "取得元URL";
   gadgets.io.makeRequest(url, response, params);

   function response(obj) {
       var domData = obj.data;
       alert(domData)
   }

として、DOMで取得するように設定してコールバック関数をしていしてこれでデータが取れることが確認できた。
しかしながら、このdomオブジェクトにinnerHTMLプロパティがない。あれ?っと思ってどんなプロパティがあるか列挙してみた。

documentElement
getElementById
nodeName
nodeValue
nodeType
parentNode
childNodes
firstChild
lastChild
previousSibling
nextSibling
attributes
ownerDocument
insertBefore
replaceChild
removeChild
appendChild
hasChildNodes
cloneNode
normalize
isSupported
namespaceURI
prefix
localName
hasAttributes
doctype
implementation
createElement
createDocumentFragment
createTextNode
createComment
createCDATASection
createProcessingInstruction
createAttribute
createEntityReference
getElementsByTagName
importNode
createElementNS
createAttributeNS
getElementsByTagNameNS
ELEMENT_NODE
ATTRIBUTE_NODE
TEXT_NODE
CDATA_SECTION_NODE
ENTITY_REFERENCE_NODE
ENTITY_NODE
PROCESSING_INSTRUCTION_NODE
COMMENT_NODE
DOCUMENT_NODE
DOCUMENT_TYPE_NODE
DOCUMENT_FRAGMENT_NODE
NOTATION_NODE
async
load
evaluateFIXptr
evaluateXPointer
getInterface
characterSet
dir
title
contentType
lastModified
referrer
getBoxObjectFor
hasFocus
activeElement
getElementsByClassName
elementFromPoint
createEvent
styleSheets
preferredStyleSheetSet
selectedStyleSheetSet
lastStyleSheetSet
styleSheetSets
enableStyleSheetsForSet
defaultView
createRange
createNodeIterator
createTreeWalker
getAnonymousNodes
getAnonymousElementByAttribute
addBinding
removeBinding
getBindingParent
loadBindingDocument
removeEventListener
dispatchEvent
baseURI
compareDocumentPosition
textContent
isSameNode
lookupPrefix
isDefaultNamespace
lookupNamespaceURI
isEqualNode
getFeature
setUserData
getUserData
inputEncoding
xmlEncoding
xmlStandalone
xmlVersion
strictErrorChecking
documentURI
adoptNode
domConfig
normalizeDocument
renameNode
DOCUMENT_POSITION_DISCONNECTED
DOCUMENT_POSITION_PRECEDING
DOCUMENT_POSITION_FOLLOWING
DOCUMENT_POSITION_CONTAINS
DOCUMENT_POSITION_CONTAINED_BY
DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC
createExpression
createNSResolver
evaluate

※2009/06/21 現在

こんなにプロパティがある中innerXXXはなかった。

今回、はまったポイント

部分HTMLを取得できない。XMLパーサーがきちんとしている子なので、HTMLの一部だけのようなものはパースエラーになり、取得ができない。

これに1時間ぐらいはまった。

幸いにしてXML形式でもデータが取れたのでそいつを料理してやった。

何はともあれ

目的のキューピー3分クッキングガジェットを完成させた。
これでガジェットクリエーターの仲間入りw

ここから登録できます。
http://www.google.com/ig/adde?source=atgs&moduleurl=cooking-gadgets.googlecode.com/svn/branches/release/gadgets/kewpie_3min.xml


まだまだ、改良の余地はあるだろうけど、とりあえず完成版ってことにしとく。
これのおかげで、自炊に目覚めましたみたいなコメント大募集中!!!www


おいしいものが毎日眺められて幸せ。