上一主题 下一主题
ScriptCat,新一代的脚本管理器脚本站,与全世界分享你的用户脚本油猴脚本开发指南教程目录
返回列表 发新帖
楼主: xiaooooooo - 

使用脚本获取文本内容的问题

[复制链接]
  • TA的每日心情
    开心
    2023-7-13 09:56
  • 签到天数: 2 天

    [LV.1]初来乍到

    9

    主题

    93

    回帖

    119

    积分

    中级工程师

    积分
    119

    油中2周年油中3周年

    发表于 2024-2-29 10:27:55 | 显示全部楼层

    本帖最后由 xiaooooooo 于 2024-2-29 10:31 编辑

    本帖最后由 xiaooooooo 于 2024-2-29 10:30 编辑

    cxxjackie 发表于 2024-2-28 22:44

    我也没有fb账号,以前注册了一句话没说过给我封了光看代码的话可能那些eo、eq之类的类名会变,get数组只要 ...

    确实!eo,eq的类名变了,换成了ei,ek什么的了。然后我发现each方法要比get方法好调试很多,会告诉我具体哪个路径写错了,不会像get方法一样一整个卡住。

    然后我有一个新的问题想要请教,就是目前我遇到的场景是这样的,帖文只有一篇,但是留言有很多条,所以能不能在elmgetter.get或者elmgetter.each当中再嵌套一个each方法来获取留言?
    image.png
    如图所示,类名为ei的都是留言,但是如果沿用一个each方法的话就会出现文本被合并分不开的情况。

    或者我有另一个想法,我只会写一段python的伪代码来表示遍历子节点的这个方法,具体在js里面要怎么写我想请教一下。

    if len(类名为.eh.ck的这个div节点)>0:
    
        for i in 类名为.eh.ck的这个div节点:
            i.find('用户名的路径').text()
            i.find('用户留言的路径').text()
    
            message.push({
                用户名:'……'
                留言:'……'
            })
    
        datalist.push({message})
    回复
    订阅

    使用道具 举报

  • TA的每日心情
    开心
    2023-7-13 09:56
  • 签到天数: 2 天

    [LV.1]初来乍到

    9

    主题

    93

    回帖

    119

    积分

    中级工程师

    积分
    119

    油中2周年油中3周年

    发表于 2024-2-29 23:48:46 | 显示全部楼层
    李恒道 发表于 2024-2-28 17:52
    mbasic.facebook.com页面
    没看到匹配上css
    感觉完全不一致

    道哥 代码我已经重写了 请教一下能不能帮我把楼上这段伪代码写成js的语句啊?不知道要怎么表达我的意思
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2022-3-8 11:41
  • 签到天数: 2 天

    [LV.1]初来乍到

    22

    主题

    862

    回帖

    1361

    积分

    荣誉开发者

    积分
    1361

    荣誉开发者卓越贡献油中2周年生态建设者油中3周年挑战者 lv2

    发表于 2024-3-1 00:03:51 | 显示全部楼层
    xiaooooooo 发表于 2024-2-29 10:27
    [md]> 本帖最后由 xiaooooooo 于 2024-2-29 10:30 编辑

    > [cxxjackie 发表于 2024-2-28 22:44](forum.php ...

    get嵌套each、each嵌套get、get嵌套get,这些都可以,把get写成async/await就能避免多层嵌套的尴尬,而each嵌套each我没有测试过,感觉逻辑上很怪,2个each之间并没有先后的概念,这可能会导致一些奇怪的问题。
    遍历子节点很简单:
    1. 父级jQuery节点.children().each(function() {
    2.     $(this).find(...).text()
    3. });
    复制代码

    不依赖jQuery的原生写法:
    1. for (const child of 父节点.children) {
    2.     child.querySelector(...).innerText
    3. }
    复制代码
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2023-7-13 09:56
  • 签到天数: 2 天

    [LV.1]初来乍到

    9

    主题

    93

    回帖

    119

    积分

    中级工程师

    积分
    119

    油中2周年油中3周年

    发表于 2024-3-1 00:51:03 | 显示全部楼层

    本帖最后由 xiaooooooo 于 2024-3-1 00:52 编辑

    好的 但是这个网站我发现了另外一个问题,似乎不允许我插入iframe元素在页面上。请教一下这个有办法绕过吗?

    主页面脚本:目的是拿到子页面的链接
    Facebook帖文列表
    https://scriptcat.org/zh-CN/script-show-page/1579

    文章列表页面

    子页面脚本:目的是获取正文和留言内容
    Facebook帖文详情
    https://scriptcat.org/zh-CN/script-show-page/1563
    某一篇示例文章

    报错页面:似乎是不允许插入iframe元素在页面上?
    image.png

    回复

    使用道具 举报

  • TA的每日心情
    开心
    2023-7-13 09:56
  • 签到天数: 2 天

    [LV.1]初来乍到

    9

    主题

    93

    回帖

    119

    积分

    中级工程师

    积分
    119

    油中2周年油中3周年

    发表于 2024-3-1 00:56:25 | 显示全部楼层
    cxxjackie 发表于 2024-3-1 00:03
    get嵌套each、each嵌套get、get嵌套get,这些都可以,把get写成async/await就能避免多层嵌套的尴尬,而ea ...

    感谢大佬 现在好像有另一个更麻烦的问题是网站限制了不允许添加iframe元素
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2023-2-28 23:59
  • 签到天数: 191 天

    [LV.7]常住居民III

    637

    主题

    5214

    回帖

    6089

    积分

    管理员

    非物质文化遗产社会摇传承人

    积分
    6089

    荣誉开发者管理员油中2周年生态建设者喜迎中秋

    发表于 2024-3-1 16:07:28 | 显示全部楼层
    xiaooooooo 发表于 2024-3-1 00:56
    感谢大佬 现在好像有另一个更麻烦的问题是网站限制了不允许添加iframe元素 ...

    一般很少情况要添加iframe
    为啥有添加iframe的需求
    混的人。
    ------------------------------------------
    進撃!永遠の帝国の破壊虎---李恒道

    入驻了爱发电https://afdian.net/a/lihengdao666
    个人宣言:この世界で私に胜てる人とコードはまだ生まれていません。死ぬのが怖くなければ来てください。
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2023-7-13 09:56
  • 签到天数: 2 天

    [LV.1]初来乍到

    9

    主题

    93

    回帖

    119

    积分

    中级工程师

    积分
    119

    油中2周年油中3周年

    发表于 2024-3-1 22:35:44 | 显示全部楼层
    李恒道 发表于 2024-3-1 16:07
    一般很少情况要添加iframe
    为啥有添加iframe的需求

    因为我想在文章的列表页就直接拿到文章详情内容,但是我又不会其他方法,只能在列表页建立一个iframe,然后把详情页的内容填充进去
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2022-3-8 11:41
  • 签到天数: 2 天

    [LV.1]初来乍到

    22

    主题

    862

    回帖

    1361

    积分

    荣誉开发者

    积分
    1361

    荣誉开发者卓越贡献油中2周年生态建设者油中3周年挑战者 lv2

    发表于 2024-3-1 23:39:08 | 显示全部楼层
    xiaooooooo 发表于 2024-3-1 00:51
    [md]好的 但是这个网站我发现了另外一个问题,似乎不允许我插入iframe元素在页面上。请教一下这个有办法绕 ...

    不是主页面禁止插入iframe,而是子页面禁止被作为iframe插入,有些网站会这么设置,这是一种安全策略,无法绕过,至少无法在正规的浏览器里绕过,除非你通过其他手段篡改响应头(如抓包软件),而这显然不是油猴脚本能做到的。
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2023-2-28 23:59
  • 签到天数: 191 天

    [LV.7]常住居民III

    637

    主题

    5214

    回帖

    6089

    积分

    管理员

    非物质文化遗产社会摇传承人

    积分
    6089

    荣誉开发者管理员油中2周年生态建设者喜迎中秋

    发表于 2024-3-1 23:53:32 | 显示全部楼层
    xiaooooooo 发表于 2024-3-1 22:35
    因为我想在文章的列表页就直接拿到文章详情内容,但是我又不会其他方法,只能在列表页建立一个iframe,然 ...

    这种更推荐gmxhr读取内容然后直接匹配内容
    不创建firame
    混的人。
    ------------------------------------------
    進撃!永遠の帝国の破壊虎---李恒道

    入驻了爱发电https://afdian.net/a/lihengdao666
    个人宣言:この世界で私に胜てる人とコードはまだ生まれていません。死ぬのが怖くなければ来てください。
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2023-7-13 09:56
  • 签到天数: 2 天

    [LV.1]初来乍到

    9

    主题

    93

    回帖

    119

    积分

    中级工程师

    积分
    119

    油中2周年油中3周年

    发表于 2024-3-2 00:10:34 | 显示全部楼层
    本帖最后由 xiaooooooo 于 2024-3-2 00:11 编辑
    李恒道 发表于 2024-3-1 23:53
    这种更推荐gmxhr读取内容然后直接匹配内容
    不创建firame

    好的 感谢道哥 我查一下油猴指南
    这个思路我以前想过 当时好像是卡在了不知道如何携带cookie去进行xhr访问
    回复

    使用道具 举报

    发表回复

    本版积分规则

    快速回复 返回顶部 返回列表