Creating metadata parsing from nitter html.
This commit is contained in:
parent
906b29a7ef
commit
a687e1b688
@ -0,0 +1,14 @@
|
||||
accessing
|
||||
metadataFromNitterHtml: xmlItem
|
||||
|
||||
self metadata
|
||||
at: 'pinned'
|
||||
put: (xmlItem xpath: '//div[@class="pinned"]') stringValue trimmed
|
||||
= 'Pinned Tweet';
|
||||
at: 'replie to' put: (xmlItem xpath:
|
||||
'//div[@class="tweet-body"]//div[@class="replying-to"]')
|
||||
stringValue trimmed;
|
||||
at: 'quote' put: (((xmlItem xpath:
|
||||
'//div[@class="tweet-body"]//div[@class="quote quote-big"]//a[@class="quote-link"]')
|
||||
postCopy asString splitOn: 'href="/') second removeSuffix:
|
||||
'"/>)')
|
@ -1,28 +1,24 @@
|
||||
accessing
|
||||
metricsFromNitterHtml: xmlItem
|
||||
|
||||
"TO DO: Metrics scrapping are not consistent.
|
||||
Most times they store numbers, but sometimes, retweets store a userName"
|
||||
|
||||
self metrics
|
||||
at: 'comment'
|
||||
put: (((xmlItem xpath: '//div[@class="tweet-stats"]//div[@class="icon-container"]')
|
||||
at: 'comment' put: (((xmlItem xpath:
|
||||
'//div[@class="tweet-stats"]//div[@class="icon-container"]')
|
||||
select: [ :item | item asString includesSubstring: 'comment' ])
|
||||
stringValue trimmed copyReplaceAll: ',' with: '');
|
||||
at: 'retweet'
|
||||
put: (((xmlItem xpath: '//div[@class="tweet-stats"]//div[@class="icon-container"]')
|
||||
at: 'retweet' put: (((xmlItem xpath:
|
||||
'//div[@class="tweet-stats"]//div[@class="icon-container"]')
|
||||
select: [ :item | item asString includesSubstring: 'retweet' ])
|
||||
stringValue trimmed copyReplaceAll: ',' with: '');
|
||||
at: 'quote'
|
||||
put: (((xmlItem xpath: '//div[@class="tweet-stats"]//div[@class="icon-container"]')
|
||||
at: 'quote' put: (((xmlItem xpath:
|
||||
'//div[@class="tweet-stats"]//div[@class="icon-container"]')
|
||||
select: [ :item | item asString includesSubstring: 'quote' ])
|
||||
stringValue trimmed copyReplaceAll: ',' with: '');
|
||||
at: 'heart'
|
||||
put: (((xmlItem xpath: '//div[@class="tweet-stats"]//div[@class="icon-container"]')
|
||||
at: 'heart' put: (((xmlItem xpath:
|
||||
'//div[@class="tweet-stats"]//div[@class="icon-container"]')
|
||||
select: [ :item | item asString includesSubstring: 'heart' ])
|
||||
stringValue trimmed copyReplaceAll: ',' with: '').
|
||||
self metadata
|
||||
at: 'pinned'
|
||||
put: (xmlItem xpath: '//div[@class="pinned"]') stringValue trimmed = 'Pinned Tweet';
|
||||
at: 'replie to'
|
||||
put: (xmlItem xpath: '//div[@class="tweet-body"]//div[@class="replying-to"]') stringValue trimmed;
|
||||
at: 'quote'
|
||||
put: ((((((xmlItem xpath: '//div[@class="tweet-body"]//div[@class="quote quote-big"]//a[@class="quote-link"]') postCopy) asString) splitOn: 'href="/') second) removeSuffix: '"/>)')
|
||||
self metadataFromNitterHtml: xmlItem
|
Loading…
Reference in New Issue
Block a user