// 监听拦截到的数据 window.dataList = [ ["昵称","发布时间","ID","时长","粉丝","关注","关注率","喜欢","喜欢率","热度","标题"] ] window.onInterceptedData = function (data) { window.systemInfo = data if (data.url.includes('https://douhot.douyin.com/douhot/v1/material/video_billboard')) { const dataTemp = JSON.parse(data.responseBody) console.log(dataTemp) dataTemp.data.objs.forEach(element => { window.dataList.push([element.nick_name, element.publish_time, element.item_id, element.item_duration, element.fans_cnt, element.follow_cnt, element.follow_rate, element.like_cnt, element.like_rate, element.score, element.item_title]) }); loadData() } }; let owoLoadList = [] function loadCSS (url) { if (owoLoadList.includes(url)) { return } owoLoadList.push(url) var link = document.createElement("link"); link.rel = "stylesheet"; link.type = "text/css"; link.href = url; document.getElementsByTagName("head")[0].appendChild(link); } setTimeout(() => { var box = document.getElementsByClassName('puge-box') if (!box[0]) { var insertElement = document.createElement("div"); insertElement.style.display = 'none' insertElement.classList.add('puge-box') insertElement.style.zIndex = '9665' insertElement.style.width = '300px' insertElement.style.height = '560px' insertElement.style.position = 'fixed' insertElement.style.right = '0' insertElement.style.top = '0' insertElement.style.fontSize = '18px' insertElement.style.lineHeight = '30px' insertElement.style.padding = '10px' insertElement.style.backgroundColor = 'white' document.body.appendChild(insertElement); if (window.pugeCreated) { window.pugeCreated(insertElement) window.pugeCreated = null } } }, 1000) var box = document.getElementsByClassName('puge-menu') if (!box[0]) { var insertElement = document.createElement("div"); insertElement.classList.add('puge-menu') insertElement.innerHTML = `
` document.body.appendChild(insertElement); } function clearData() { window.dataList = [ ["昵称","发布时间","ID","时长","粉丝","关注","关注率","喜欢","喜欢率","热度","标题"] ] loadData() } function loadData() { window.yhqd.innerText = `已获取数据数量:${window.dataList.length - 1}` } // 保存CSV function fake_click(obj) { var ev = document.createEvent("MouseEvents"); ev.initMouseEvent( "click", true, false, window, 0, 0, 0, 0, 0 , false, false, false, false, 0, null ); obj.dispatchEvent(ev); } function download(name, data) { var urlObject = window.URL || window.webkitURL || window; var downloadData = new Blob([data]); var save_link = document.createElementNS("http://www.w3.org/1999/xhtml", "a") save_link.href = urlObject.createObjectURL(downloadData); save_link.download = name; fake_click(save_link); } function saveCSV (name, data) { let saveData = '' data.forEach(element => { if (element) { saveData += element.join(',') saveData += '\r\n' } }); var urlObject = window.URL || window.webkitURL || window; var downloadData = new Blob(['\ufeff' + saveData], { type: 'text/csv,charset=UTF-8'}); var save_link = document.createElementNS("http://www.w3.org/1999/xhtml", "a") save_link.href = urlObject.createObjectURL(downloadData); save_link.download = name; fake_click(save_link); } function saveData() { saveCSV ("output.csv", window.dataList) } function owostart () { const box = document.getElementsByClassName('puge-box')[0] // alert(box.style.display) if (box.style.display == 'none') { box.style.display = 'block' if (window.pugeCreated) { window.pugeCreated(document.getElementsByClassName('puge-box')[0]) window.pugeCreated = null } } else { box.style.display = 'none' } window.loadingDialog = function () { return } } function logPanel (el, max) { if (el) { el.innerHTML = '