diff --git a/Socialmetrica.package/Tweet.class/class/reStoreDefinition.st b/Socialmetrica.package/Tweet.class/class/reStoreDefinition.st index 9aa39a3..4c1421f 100644 --- a/Socialmetrica.package/Tweet.class/class/reStoreDefinition.st +++ b/Socialmetrica.package/Tweet.class/class/reStoreDefinition.st @@ -5,5 +5,6 @@ reStoreDefinition define: #text as: String; define: #created as: String; define: #authorId as: String; - define: #timelines as: (Dictionary of: String -> String); + define: #timelines as: (Dictionary of: String -> String); + define: #metrics as: (Dictionary of: String -> String); yourself \ No newline at end of file diff --git a/Socialmetrica.package/Tweet.class/instance/fromNitterTimelineItem..st b/Socialmetrica.package/Tweet.class/instance/fromNitterTimelineItem..st index ecd75d4..9911a6e 100644 --- a/Socialmetrica.package/Tweet.class/instance/fromNitterTimelineItem..st +++ b/Socialmetrica.package/Tweet.class/instance/fromNitterTimelineItem..st @@ -18,11 +18,26 @@ fromNitterTimelineItem: xmlItem metricsTemp := Dictionary new . metricsTemp at: 'comment' - put: (xmlItem xpath: '//div[@class="icon-container"]') second stringValue trimmed; + put: ((((xmlItem xpath: '//div[@class="icon-container"]') + select: [ :item | item asString includesSubstring: 'comment' ]) + stringValue trimmed) copyReplaceAll: ',' with: ''); at: 'retweet' - put: (xmlItem xpath: '//div[@class="icon-container"]') third stringValue trimmed; + put: ((((xmlItem xpath: '//div[@class="icon-container"]') + select: [ :item | item asString includesSubstring: 'retweet' ]) + stringValue trimmed) copyReplaceAll: ',' with: ''); at: 'quote' - put: (xmlItem xpath: '//div[@class="icon-container"]') fourth stringValue trimmed; + put: ((((xmlItem xpath: '//div[@class="icon-container"]') + select: [ :item | item asString includesSubstring: 'quote' ]) + stringValue trimmed) copyReplaceAll: ',' with: ''); at: 'heart' - put: (xmlItem xpath: '//div[@class="icon-container"]') fifth stringValue trimmed. - metrics := metricsTemp. \ No newline at end of file + put: ((((xmlItem xpath: '//div[@class="icon-container"]') + select: [ :item | item asString includesSubstring: 'heart' ]) + stringValue trimmed) copyReplaceAll: ',' with: ''). + metrics := metricsTemp. + + metadata := Dictionary new. + metadata + at: 'pinned' + put: (((xmlItem xpath: '//div[@class="pinned"]') stringValue trimmed) = 'Pinned Tweet' + ifTrue: [ True ] + ifFalse: [ False ]) \ No newline at end of file