首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何更快地加载无限滚动页?

如何更快地加载无限滚动页?
EN

Stack Overflow用户
提问于 2022-02-12 20:54:35
回答 1查看 367关注 0票数 -1

https://immutascan.io/address/0xac98d8d1bb27a94e79fbf49198210240688bb1ed

这个URL有一些100k+行,我正在尝试刮行。它们可以追溯到一个月前(我相信是2022年10月1日),但它们的徽章是7-8。

现在,我有一个宏在页面上慢慢滚动,这个宏正在工作,但是每天要花费8-10个小时的时间。

到目前为止,当新的行加载时,有2-3个项会立即加载,然后会有几个项随时间的推移加载。我不需要的部分加载缓慢,并希望他们加载得更快或根本不。

是否有一种方法可以阻止元素加载以加快其他行的加载?

我使用的是一个自动热键脚本,它用鼠标滚轮向下滚动,并且一直运行得很好。

我也尝试过Chrome扩展,但速度更慢。

我曾经找到一个python脚本,但它没有比自动热键更快。

回答:不变X有一个API,所以我使用它而不是这个做同样事情的站点。以下是工作代码:

代码语言:javascript
复制
import requests
import time
import pandas as pd
import time

URL = "https://api.x.immutable.com/v1/orders"
bg_output = []
params = {'status': 'filled',
          'sell_token_address': '0xac98d8d1bb27a94e79fbf49198210240688bb1ed'}

with requests.Session() as session:
    while True:
        (r := session.get(URL, params=params)).raise_for_status()
        data = r.json()
        for value in data['result']:
            orderID = value['order_id']
            info = value["sell"]["data"]["properties"]["name"]
            wei = value["buy"]["data"]["quantity"]
            decimals = value["buy"]["data"]["decimals"]
            spacer = "."
            eth = float(wei[decimals:] + spacer + wei[:decimals])
            print(f'Count={len(bg_output)},Order ID={orderID}, Info={info}, Eth={eth}')
            bg_output.append(f'Count={len(bg_output)},Order ID={orderID}, Info={info}, Eth={eth}')
            timestr = time.strftime("%Y%m%d")
            pd.DataFrame(bg_output).to_csv('bg_output' + timestr + '.csv')
            #print(len(bg_output))
        time.sleep(1)    
        if (cursor := data.get('cursor')):
            params['cursor'] = cursor
        else:
            print(bg_output)
            break
            
print(bg_output)
print("END")
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-12 21:19:25

你考虑过直接使用他们的API吗?滚动页面时,请查看浏览器的dev tools“network”选项卡。在这里,您可以看到对其API的实际调用。查看对URL的所有POST请求

代码语言:javascript
复制
https://3vkyshzozjep5ciwsh2fvgdxwy.appsync-api.us-west-2.amazonaws.com/graphql

尝试调整这些API调用,这样您就可以通过它们的GraphQL获得正确的数据,而不必滚动实际的页面。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71095812

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档