|
@@ -27,18 +27,49 @@ class ParseCard {
|
|
|
}
|
|
|
return de_net_card
|
|
|
}
|
|
|
+ // 兼容mask
|
|
|
+ compatibleMask(article) {
|
|
|
+ let has_denet = false
|
|
|
+ try {
|
|
|
+ let arr_span = article.querySelectorAll('span') || []
|
|
|
+ let arr_shadow = []
|
|
|
+ arr_span.forEach((item) => {
|
|
|
+ if (item.shadowRoot) {
|
|
|
+ arr_shadow.push(item.shadowRoot)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ let item
|
|
|
+ for (let i in arr_shadow) {
|
|
|
+ item = arr_shadow[i].childNodes
|
|
|
+ if (item) {
|
|
|
+ for (let j in item) {
|
|
|
+ if (item[j].innerText && item[j].innerText.includes('#DeNet')) {
|
|
|
+ has_denet = true
|
|
|
+ break
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } catch (error) {
|
|
|
+ }
|
|
|
+ // 是否有#DeNet
|
|
|
+ return has_denet
|
|
|
+ }
|
|
|
parseAllDeNetCard() {
|
|
|
let de_net_card = []
|
|
|
- let arr_article = document.querySelectorAll('article') || []
|
|
|
- let _txt
|
|
|
- for (let i in arr_article) {
|
|
|
- _txt = arr_article[i].innerText || ''
|
|
|
- if (_txt.includes('#DeNet') && !this.isHasIframeByArticle(arr_article[i])) {
|
|
|
- de_net_card.push({
|
|
|
- time: new Date().getTime(),
|
|
|
- dom: arr_article[i]
|
|
|
- })
|
|
|
+ try {
|
|
|
+ let arr_article = document.querySelectorAll('article') || []
|
|
|
+ let _txt
|
|
|
+ for (let i in arr_article) {
|
|
|
+ _txt = arr_article[i].innerText || ''
|
|
|
+ if (_txt.includes('#DeNet') || this.compatibleMask(arr_article[i]) && !this.isHasIframeByArticle(arr_article[i])) {
|
|
|
+ de_net_card.push({
|
|
|
+ time: new Date().getTime(),
|
|
|
+ dom: arr_article[i]
|
|
|
+ })
|
|
|
+ }
|
|
|
}
|
|
|
+ } catch (error) {
|
|
|
}
|
|
|
return de_net_card
|
|
|
}
|
|
@@ -78,7 +109,7 @@ class ParseCard {
|
|
|
let urlArr = new URL(faceJumpUrl);
|
|
|
let searchArr = new URLSearchParams(urlArr.search);
|
|
|
let deUrlParams = searchArr.get('deUrlParams') || '{}';
|
|
|
- deUrlParams = JSON.parse(deUrlParams);
|
|
|
+ deUrlParams = JSON.parse(deUrlParams);
|
|
|
if (!tweet_Id) {
|
|
|
tweet_Id = deUrlParams.tweetId;
|
|
|
}
|
|
@@ -94,7 +125,7 @@ class ParseCard {
|
|
|
let urlArr = new URL(a_arr[i].href);
|
|
|
let searchArr = new URLSearchParams(urlArr.search);
|
|
|
let deUrlParams = searchArr.get('deUrlParams') || '{}';
|
|
|
- deUrlParams = JSON.parse(deUrlParams);
|
|
|
+ deUrlParams = JSON.parse(deUrlParams);
|
|
|
if (!tweet_Id) {
|
|
|
tweet_Id = deUrlParams.tweetId;
|
|
|
}
|