V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
s2555
V2EX  ›  Python

有人喜欢写爬虫用浏览器扩展来实现的吗?

  •  
  •   s2555 · 1 天前 · 2005 次点击

    要爬网页的时候,每次用 python 写都是容易跳出验证,有些要登录的更麻烦,后来我发现写浏览器扩展,直接操作当前的页面好像不用考虑那么多情况,爬到的数据直接发到接口处理。所以问下大家,我这个是 Python 用得不好,技能点歪了吗?

    41 条回复    2025-02-21 16:12:06 +08:00
    cyhlnj
        1
    cyhlnj  
       1 天前
    扩展怎么写的
    aladd
        2
    aladd  
       1 天前
    同策略,因为我不会写代码,过验证对我来说太难了,外加我维护的小玩具难度太低了,有结果就行。
    所以我一直这么玩的,并很满意!
    callmejoejoe
        3
    callmejoejoe  
       1 天前
    看需求,简单少量的数据爬取用扩展也可以,就是速度慢,还得开着电脑浏览器不休眠
    fidcz123
        4
    fidcz123  
       1 天前
    想问下有些页面 js 调用 click 不生效,这个怎么处理?
    尝试过事件以及网上大部分操作都无效

    对于多页之类的总不可能一个个手动点
    815979670
        5
    815979670  
       1 天前
    写扩展也麻烦 可以写油猴插件 JS 就能操作
    AFOX
        6
    AFOX  
       1 天前
    @fidcz123 加一个 delay 试试
    lisxour
        7
    lisxour  
       1 天前
    无头啊,浏览器扩展不觉得很受限嘛?完全吃力不讨好
    TimePPT
        8
    TimePPT  
       1 天前
    playwright+无头浏览器,解决 80%问题
    tool2dx
        9
    tool2dx  
       1 天前
    @lisxour cf 防火墙访问限制开高的话,无头很难爬,动不动就跳验证。
    yahon
        10
    yahon  
       1 天前
    简单的我一般用这个插件 https://tenrabbits.github.io/user-js-css-docs/
    irever
        11
    irever  
       1 天前
    简单使用的话可以试试 WebScraper
    picone
        12
    picone  
       1 天前
    量少的话确实很方便,直接兼容所有反爬策略,验证码除外。 我喜欢用 automa 这个插件,不用自己手写。
    mc2tap
        13
    mc2tap  
       1 天前
    确实,经常用 puppeteer 做
    sofukwird
        14
    sofukwird  
       1 天前 via Android
    https://www.v2ex.com/t/1028977#reply50
    把页面资源通过 http proxy 代理暴露出来
    hanssx
        15
    hanssx  
       1 天前
    不是,你扩展怎么就能过 cf 了吗?还是说你手动过了 cf ,扩展再工作,那你这顶多半自动化。
    kkk1234567
        16
    kkk1234567  
       1 天前
    selenium ,直接用浏览器爬
    Vegetable
        17
    Vegetable  
       1 天前
    没歪,这样挺好的。
    包括使用 MITM 代理+手动翻页,都是可行的方案。前提是看你什么需求。

    对自动化要求高、规模大的当然不行,但很多爬虫其实不是这样的需求。
    lisxour
        18
    lisxour  
       1 天前
    @tool2dx 那也可以直接 playwright 自动化控制浏览器啊,本质就是跟自己打开浏览器一样的,啥方案不比浏览器扩展强
    mumbler
        19
    mumbler  
       1 天前
    无头浏览器才是正确姿势
    freewind
        20
    freewind  
       1 天前
    C# + webview2 自己做浏览器爬

    扩展限制了很多权限
    s2555
        21
    s2555  
    OP
       1 天前
    @cyhlnj 分析好页面,chatgpt 直接写好了,再改改就行了。
    s2555
        22
    s2555  
    OP
       1 天前
    @freewind 我很早也做过这样的啊,很多网页直接屏蔽了
    s2555
        23
    s2555  
    OP
       1 天前
    @fidcz123 目前没试过不生效的,这个基本等于鼠标操作了
    cutecore
        24
    cutecore  
       1 天前
    一样,难搞的会用浏览器,用 Bulk URL Opener 和 Tampermonkey 来做。
    s2555
        25
    s2555  
    OP
       1 天前
    @TimePPT playwright 打开的浏览器就跟新开的浏览器啊,没有登录状态
    s2555
        26
    s2555  
    OP
       1 天前
    有些网站我只要模拟点击下一页,然后拦截请求,就可以获取那些 api 的数据,但是有很多不行,半桶水水平。
    s2555
        27
    s2555  
    OP
       1 天前
    @callmejoejoe 用 python 模拟的话也要开着电脑啊,而且你还不能干别的了,浏览器扩展的话,我只要开着那个网页就行了。
    dawn009
        28
    dawn009  
       1 天前
    @mumbler
    @kkk1234567

    无头浏览器能被反爬检测到。真实浏览器最省心,反正个人使用也不需要很高的效率,足够了
    Chatterleys
        29
    Chatterleys  
       1 天前
    简单的可以,但是风控都很难过,我平常做扩展类工具比较多,电商类的自动化工具
    soar0712
        30
    soar0712  
       1 天前
    我用 java 多,我的解决办法
    1 、不复杂的话,用 java 操作无头浏览器,能抓住八成的数据;
    soar0712
        31
    soar0712  
       1 天前
    @soar0712 2 、更复杂的,直接用 java 操作 robot 接管键鼠,模拟人工取数据
    cdlnls
        32
    cdlnls  
       1 天前 via Android
    哈哈,我之前做了一个,写着玩的没开源。

    浏览器装上了插件之后,会同步当前的 tab 到服务端,用 websocket 个服务器同步状态。

    服务器会下发命令,执行 js ,获取网页内容等等。

    服务端下发任务的时候,可以随机分配任务到连接的客户端上,执行分布式任务。。

    做出来了之后特别像后门软件,可以在没有察觉的情况下监控浏览器的上网情况。。。
    NerdHND
        33
    NerdHND  
       1 天前
    abigeater
        34
    abigeater  
       16 小时 19 分钟前
    用油猴写 教会怎么用油猴就好, 浏览器扩展没发布得启用开发者模式,教别人安装这个太麻烦了不同浏览器的扩展打包也麻烦
    s2555
        35
    s2555  
    OP
       16 小时 8 分钟前
    @cdlnls 牛的
    @NerdHND 感谢,看了对我来说太麻烦了。
    @abigeater 我了解一下
    macaodoll
        36
    macaodoll  
       14 小时 56 分钟前
    我选择直接定制浏览器,
    zbowen66
        37
    zbowen66  
       14 小时 5 分钟前
    @s2555 #25 明明可以把所有状态 cookies ,storage 等储存到不同 JSON 文件,启动的时候可以加载不同文件,方便地一批
    s2555
        38
    s2555  
    OP
       13 小时 54 分钟前
    @zbowen66 🙏感谢,deepseek 了一下,完全明白了
    guaguaguaxia1
        39
    guaguaguaxia1  
       12 小时 28 分钟前
    不管黑猫白猫
    iorilu
        40
    iorilu  
       11 小时 58 分钟前
    插件怎么个玩法, 有没有开源得参考下

    有时候也想爬点数据
    s2555
        41
    s2555  
    OP
       10 小时 9 分钟前
    @iorilu 在 deepseek 输入需求,它会把每一步都写出来,跟着做就行了,没多少代码。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1160 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 18:21 · PVG 02:21 · LAX 10:21 · JFK 13:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.