Giter VIP home page Giter VIP logo

naibowang / easyspider Goto Github PK

View Code? Open in Web Editor NEW
21.0K 159.0 2.4K 130.67 MB

A visual no-code/code-free web crawler/spider易采集:一个可视化浏览器自动化测试/数据采集/爬虫软件,可以无代码图形化的设计和执行爬虫任务。别名:ServiceWrapper面向Web应用的智能化服务封装系统。

Home Page: https://www.easyspider.net

License: Other

Python 24.96% HTML 12.91% JavaScript 47.97% CSS 11.71% Batchfile 0.24% TypeScript 0.12% Vue 1.87% Shell 0.22%
code-free crawler gui layman spider parameters web www input-parameters frontend

easyspider's Introduction

易采集/EasySpider: Visual Code-Free Web Crawler

一个可视化浏览器自动化测试/数据采集/爬虫软件,可以使用图形化界面,无代码可视化的设计和执行任务。只需要在网页上选择自己想要操作的内容并根据提示框操作即可完成任务的设计和执行。同时软件还可以单独以命令行的方式进行执行,从而可以很方便的嵌入到其他系统中。

A visual browser automation test/data collection/crawler software, which can be used to design and execute tasks in a code-free visual way. You only need to select the content you want to operate on the web page and follow the prompts to complete the design and execution of the task. At the same time, the software can also be executed separately in the command line, so that it can be easily embedded into other systems.

赞助者/Sponsors

亮数据BrightData是代理市场领导者,覆盖全球的7200万IP,提供真人住宅IP,即时批量采集网络公开数据,成功率亲测有保证。需要性价比高代理IP的可点击上方图片注册后联系中文客服,开通后免费试用,最高可得250美金折扣。BrightData可配合EasySpider进行数据采集。

Capsolver.com是一家基于人工智能,提供自动验证码解决功能的服务商。支持的验证码类型包括reCAPTCHA、hCaptcha和FunCaptcha、AWS captcha、Geetest、Akamai Web、BMP、Imperva/Incapsula、captcha图像识别等。Capsolver可配合EasySpider进行验证码识别。

官方网站/Official Website

访问易采集官网:www.easyspider.cn

Visit the official website of EasySpider: www.easyspider.net

示例1/Example 1

(右键)选中一个大商品块 -> 软件自动检测到同类型商品块 -> 点击“选中全部”选项 -> 点击“选中子元素”选项 -> 点击“采集数据”选项,即可采集到所有商品的所有信息,并分成不同字段保存。

(Right click) Select a large product block -> The software will automatically detect similar blocks -> Click the 'Select All' option -> Click the 'Select Child Elements' option -> Click the 'Collect Data' option, you can collect the information of all products, and will be saved by sub-field.

animation_zh

示例2/Example 2

(右键)选中一个商品标题,同类型标题会被自动匹配,点击“选中全部”选项 -> 点击“采集数据”选项,即可采集到所有商品的标题信息。

同时,选中全部后如果选择“循环点击每个元素”选项,即可自动打开每个商品的详情页,然后可以再继续设置采集详情页的信息。

(Right Click) Select a product title, the same type of title will be automatically matched, click the 'Select All' option -> Click the 'Collect Data' option, you can collect the title information of all products.

At the same time, if you select the 'Loop-click every element' option after selecting all, you can automatically open the details page of each product, and then can set to collect the information of the details page.

animation_en

更多特性/More Features

更多特性请翻到页面底部查看。

More features please scroll to the bottom of this page to view.

下载易采集/Download EasySpider

进入 Releases Page 下载最新版本。如果下载速度慢,可以考虑**境内下载地址:**境内下载地址

Refer to the Releases Page to download the latest version of EasySpider.

支持作者/Support Author

易采集EasySpider是一款完全免费无广告的开源软件,软件开发和维护全靠作者用爱发电,因此您可以选择支持作者让作者有更多的热情和精力维护此软件,或者您使用了此软件进行了盈利,欢迎您通过下面的方式支持作者:

  1. Github Sponsor:直接点击右侧Sponsor按钮赞助。
  2. 支付宝账号:[email protected],也可以扫描下方二维码。
  3. 微信收款:扫描下方二维码。
  4. PayPal账号:naibowang,也可以扫描下方二维码。

You can support the author by clicking the Sponsor button at right side or pay via paypal: naibowang.

QRCodes

文档/Documentation

请点此进入教程文档,如有英文可暂时翻译一下,或看作者的硕士毕业论文(主要看第三章和第五章)。

Ebay样例博客:https://blog.csdn.net/ihero/article/details/130805504

Documentation can be found from GitHub Wiki.

视频教程/Video Tutorials

Bilibili/B站视频教程:

EasySpider介绍 - **地震台网采集案例

设置页面向下滚动

如何无代码可视化的爬取需要登录才能爬的网站 - 知乎网站案例

循环点击列表中每个链接进入详情页采集详情页内容+设计时动态调试+动态JS

实战采集汽车网文章内容并下载文章内图片

定时执行任务+选中子元素多种模式+将提取值作为变量输入

【重要】自定义条件判断之使用循环项内的JS命令返回值 - 第二弹

流程图执行逻辑解析 - 58同城房源描述采集案例

MacOS系统设计和执行eBay网站爬虫任务教程

如何执行自己写的JS代码和系统代码 (自定义操作)

如何自定义循环和判断条件 - 第一弹

如何对元素和网页截图及命令行执行指南

OCR识别元素内容功能(常用于文字验证码)

如何爬需要输入验证码的网站

如何切换IP池和使用隧道IP - 打开详情页采集案例

如何同时执行多个任务(并行多开)

Python代码运算后的结果作为文本框的输入

实例 - 反人类网站文章采集和代码调试

写入MySQL数据库教程

Cloudflare等极端反爬网站如何爬取

Refer to Youtube Playlist to see the video tutorials of EasySpider.

样例任务/Sample Tasks

从本项目的Examples文件夹中下载样例任务,更名为大于0的数字,导入到EasySpider中的tasks文件夹中,然后在EasySpider中打开即可。

Download sample tasks from the Examples folder of this project, rename them to numbers greater than 0, import them into the tasks folder in EasySpider, and then open them in EasySpider.

声明/Declaration

本软件仅供学习交流使用,严禁使用软件进行任何违法违规的操作,如爬取不允许爬取的政府/军事机关网站等。使用本软件所造成的一切后果由使用者自负,与作者本人无关,作者不会承担任何责任

This software is for learning and communication only. It is strictly forbidden to use the software for any illegal operations, such as crawling government/military websites that are not allowed to be crawled. All consequences caused by the use of this software are at the user's own risk, and the author is not responsible for any consequences.

对于政府和军事机关等网站的爬虫操作,作者将不会进行任何答疑,以免违反国家相关法律法规和政策。

For the crawler operations of government and military websites, the author will not answer any questions in order to avoid violating relevant national laws, regulations and policies.

同时,软件受到专利权保护,如要用于商业用途,如使用软件进行盈利接单,出售采集到的数据,或将软件集成到自己的系统中等,请邮件联系作者:[email protected]

Meanwhile, the software is protected by patent rights. If it is used for commercial purposes, such as using the software to make profits, selling the collected data, or integrating the software into your own system, please contact the author by email: [email protected]

答疑QQ群

群号:682921940,建议通过Github提Issue的方式答疑,如果实在有需要才请加QQ群,因为群人数有上限,QQ群不提供软件下载功能

出版物/Publications

编译说明/Compilation Instructions

查看编译说明

Refer to Compilation Instructions.

支持特性/Supported Features

pic pic

中文界面截图

软件界面示例

pic

块和子块及表单定义

pic

已选中和待选择示例

pic

京东商品块选择示例:

pic

京东商品标题自动匹配选择示例

pic

分块选择所有子元素示例

pic

同类型元素自动和手动匹配示例

pic

四种选择方式示例

pic

输入文字示例

pic

循环点击58同城房屋标题以进入详情页采集示例

pic

采集元素文本示例

pic

流程图界面介绍

pic

循环选项示例

pic

循环点击下一页示例

pic

条件分支示例

pic

完整采集流程图示例

pic

完整采集流程图转换为常规流程图示例

pic

服务信息示例

pic

服务调用示例

pic

58 同城房源信息采集服务部分采集结果展示

pic

easyspider's People

Contributors

dependabot[bot] avatar eltociear avatar naibowang avatar touero avatar yfdyh000 avatar zhyim0712 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

easyspider's Issues

记录下待开发的功能,大家也可以来提想要的功能

以下功能会在有空的时候集中开发,大家有什么想要的功能也可以提issues留言,也欢迎大家fork之后帮我开发并提交pull request~

这部分是长期开发计划:

  • 设计阶段通过outside:code.js来加载JS代码,并暴露交互接口方便和设计阶段的程序交互。

  • 接入cms。

  • m3u8下载。

  • 智能检测主要内容块并标记选中,思路:先滚动直到到达5次没有新内容加载,然后根据网页中的html内容,检测最大的块(子元素结构一致且数量最多的块)作为主要块,并自动选中子元素。
    另一种思路:将整个网页每个节点的具体内容替换成长度的数字,然后分析这个树,根据字数长短寻找最佳块。占比面积最大的块是什么,标记清楚(硕士论文最早的一章)。

  • 引入大语言模型,用于分析页面主要内容及识别验证码等,如将图片类验证码转换为文字后,用大语言模型/多模态模型过验证码。

  • 构建Docker镜像和Web前端页面,可以远程访问,调用和执行服务器的爬虫任务;通过http调用的方式直接执行任务。

  • Oracle/Sql Server/MongoDB/Postgre数据库入库功能。

  • iframe层数设置。

  • 循环和提取数据可以不止选择第一个元素。

  • 底层框架可以考虑换playwright。

  • 操纵扩展页面。

  • 手机APP采集支持。

  • 插件版本的EasySpider处理CloudFlare等极端网站。

  • 任务列表排序和搜索。

  • 拼接后给XPath最终是多少的提示。

  • 插件测试,saveData()之前过一个全局插件用来处理数据为其他指定格式,如导入翻译插件(新导包的路径依赖怎么做),试一下是否可以将self.替换成其他的如browser.就可以完成指定任务。

  • 命令行默认为local模式。

  • 数据写入模式中增加文件已存在自动重命名,下载文件同名情况下重命名(多线程测试,keyboard参数测试,采集速度测试,两个相同任务ID同时下载文件测试)。

  • cookies池功能。

  • 自定义操作新增“生成新数据行”,“清空字段值”,“退出程序”的操作。

  • 自定义操作新增“切换标签页”,“关闭当前标签页”,“最大化窗口”的操作,循环文本列表同样需要处理标签页。

  • 试运行JS增加提示返回值功能。

  • 提取数据操作试运行可以实时显示多数类型的元素提取值。

  • 字段内容示例值很长时自动换行。

  • MacOS下循环点击每个链接的Bug修复。

  • 判断条件增加多个值,与或都行。

  • 操作台增加OCR识别图片选项。

  • 下载的图片名称可自定义,用于后续读取图片方便验证码识别等。

  • 出一期设计阶段不用自带浏览器设计的教程(不能自动点击和输入文字)。

  • 文心一言测试。

  • PDF生成。

  • 文章生成doc,图片插入到文字中保持顺序不变。

  • 保存任务提示时间减少。

  • 操作备注。

  • 循环的XPath也可以使用上层循环做拼接。

  • 可选是否加载图片和视频以提高效率。

  • (Bug修复)打开网页默认应该打开的是链接池的第一个链接。

  • 双击操作。

  • mysql数据去重bug:1054, unknown column '_id' in 'field list'.

提取第一层数据和第二层数据不能一一匹配

以下是案例:Easyspider采集公开招标信息记录
一、应用场景
在**政府采购网中,采集公开招标信息,采集的信息包括公开招标主页数据和公告明细页数据。
URL:http://www.ccgp.gov.cn/cggg/dfgg/gkzb/
二、设置流程

设计流程图

流程说明:
1.打开网页。
2.循环点击下一页:xpath://*/a[@Class="next"],测试时只循环1次。
3.循环提取数据:xpath:/html/body/div[2]/div[1]/div[1]/div[1]/div[2]/div[1]/ul[1]/li
4.提取总览数据:提取采购公告总览列表数据,提取项目名称、发布时间、地域、采购人、连接地址字段。
5.点击进入明细页:点击采购公告名称链接,进入公告明细页面。xpath:/html/body/div[2]/div[1]/div[1]/div[1]/div[2]/div[1]/ul[1]/li/a[1]
6.提取明细也数据:提取明细页全部数据,字段名“采购公告”,xpath:/html/body/div[2]/div[1]/div[2]
7.点击下一页:点击下一页按钮。
三、问题
执行任务,能进入明细页和跳转下一页,能成功实现数据采集,但是采集的数据有问题,提取总览数据和提取明细页数据,有冗余,并且不能一一对应,提取第一部分数据有两行,提取第二部分数据也有两行,两部分数据交错对应。
请帮忙看下是什么问题,是不是设计流程出了问题?
四、附件
1.word记录;
2.设计流程json;
3.提取的数据;
4.日志。
Uploading 附件.zip…

关于编写javascript脚本执行时好时坏的案例

任务目的,采集一个电商网站的类目,并将其进行自定义排列。
网站:https://www.fruugo.co.uk/sets-snap-fasteners-kit-tool-metal-snap-buttons-rings-with-fastener-pliers-press/p-144913113-305735011
image
元素所在位置前端解析:
我写的脚本语言是:
return
arguments[0].innerTextreplaceAll(‘\n','').trim().replace(/\s{2,}/g,' > ')
其实就是先把获取元素的innerText整理一下,把换行符号去掉,再去掉前后的空格,最后得到的格式是中间带有多个空格,把它们替换成符号 >来连接。
单个链接跑了一次,是成功的
微信截图_20230530140407

当我跑20个链接以上,就又不行了
image

能否增加自定义提取数据字段的功能呢?

感谢作者的项目!
作者有考虑在提取数据这里支持手动添加字段吗,既然已经有了修改、删除、上移、下移功能,为何不增加"添加"功能。不知道是我操作的问题还是什么原因,使用自带的操作提示框来编辑字段时经常出现添加的不是我需要的字段的现象。
1684999420096

ERROR:device_event_log_impl.cc(222)]

ERROR:device_event_log_impl.cc(222)] [09:20:54.920] USB: usb_service_win.cc:415 Could not read device interface GUIDs: 系统找不到指定的文件。 (0x2)
image

MacOS 10.x系统编译运行方式

对于MacOS 10.x系统,下载EasySpider后,设计任务时可正常使用,执行任务时需手动编译运行,方式为:

  1. 下载源代码:
    image
  2. 解压后,打开命令行,进入ExecuteStage文件夹,然后运行pip3 install -r requirements.txt命令:
cd Downloads/EasySpider-master/ExecuteStage
pip3 install -r requirements.txt
  1. 拷贝easyspider_executestage.py文件到之前下载好的EasySpider文件夹(带easyspider_executestage可执行文件的那个文件夹):

image

  1. 命令行进入此文件夹,然后将提示命令中的./easyspider_executestage替换成python3 easyspider_executestage.py 后面不变:
cd 你的EasySpider文件夹,如:cd /Users/你的用户名/Downloads/EasySpider_MacOS_all_arch
python3 easyspider_executestage.py --id '[3]' --user_data 0 --server_address http://localhost:8074 --config_folder "/Users/panbing/Library/Application Support/EasySpider/" --headless 0 --read_type remote --config_file_name config.json --saved_file_name 

即可执行任务。

Originally posted by @NaiboWang in #65 (comment)

能否设置使用的浏览器

easyspider默认使用的是谷歌浏览器,但是我平常使用的是edge,想请问能否设置成默认使用edge

代码方面建议及问题若干

#25。构建代码方面。

  • 1. [建议] 打包的EasySpider_0.3.0_Beta_windows_amd64.7z中,Chrome的Installer大概是不需要的,压缩包能节省100MB。
  • 2. [建议] 构建流程有点散乱和复杂,虽然有几份自述,但还是不太懂。
  • 3. [建议] 建议加一个npm run start_direct的.cmd文件。
  • 4. [问题] start_direct后,点击启动任务会报错,不确定放错了什么。或者是否不打包就不能运行,缺少相关结构。
  • 5. [建议] 为VSCode调试命令定义任务文件。
  • 6. [建议] Chrome及chromedriver的下载和环境检查,建议脚本化,至少向导脚本。
  • 7. [疑问] https://chromedriver.storage.googleapis.com/index.html?path=113.0.5672.63/ 只提供win32,不确定是否可以及如何用。
  • 8. [问题] package_*.cmd有一行没用%temp%
  • 9. [疑问] ElectronJS/package_win32.cmd不需要检测UAC吗。不确定为什么检测。
  • 10. [问题] clean bat多处rmdir/s丢失空格。
  • [疑问] 不确定作用,clean为什么还move文件。
  • [建议] 32和64位bat是否能合二为一。是否该写成python或nodejs脚本,既然依赖其环境。
  • 11. [问题] out输出的tasks目录是空的,是否脚本流程未覆盖。
  • 12. [疑问] EasySpider\ElectronJS\out\EasySpider-win32-x64目录名令人困惑。
  • 13. [建议] 提供功能及环境自检界面。如Chrome和chromedriver等文件是否备好、版本号,要使用OCR识别功能,你需要安装Tesseract-OCR并将其添加到环境变量PATH中等。
  • 14. [疑问] electron-forge make后的文件,是一个自动安装的安装包吗。EasySpider-0.3.0-full.nupkg又是做什么。
  • 15. [问题] EasySpider-0.3.0 Setup.exe 自动安装期间似乎该程序被启动多次,卸载时似乎程序会被启动。
  • 16. [建议] ElectronJS\package.json "license": "CC0-1.0", 疑似有误。
  • 17. [建议] 无需自带vs_BuildTools.exe,提供 https://aka.ms/vs/15/release/vs_buildtools.exe
  • 18. [疑问] 步骤中的npm install @electron-forge/cli能否省略,package.json中定义不够吗。
  • 19. [建议] optional: npm run make没解释作用。Package Instruction与For windows x64的打包指令存在重叠。
  • 20. [疑问] EasySpider.bat只是启动exe,好像不太有用。
  • 21. [疑问] 25KB EasySpider.exe的构建方法是否已开源。

界面方面:

  • 1. [低优先级] 记住语言和语言切换。
  • 2. 任务列表 URL栏不够宽。
  • 3. [建议] 个人倾向URL均称“网址”。
  • 4. 任务列表 页面,看到双重的垂直滚动条。大概垂直分辨率相关。
  • 5. 任务信息 页面,左边距明显大于右边距,并产生水平滚动条。大概分辨率相关。
  • 6. 任务流程修改 页面缺少右边距。或许垂直滚动条占位了。
  • 7. tasks目录中的文件序号,与任务列表的ID(实则序号)似乎是不对应的,可能误导、误覆盖等。可以考虑不用数字作文件名,选一种类似UUID的方案?
  • 8. EasySpider_0.3.0_Beta中的任务文件,中文是直接写的。git库中的,是\u形式。后者不容易查找。
  • 9. [低优先级] 任务文件json,如果有手动查看和编辑的预期,自带缩进也许会好一些。体积和处理复杂度会轻微增加。
  • 10. 任务文件中节点的nodeName,也许不利于跨语言交流和交换。是否考虑未修改的步骤名称被允许或默认留空。例如“Bilibili粉丝”任务,修改任务流程,看到的是"Open Page" "Loop"等英文步骤。

[bug]cannot load 'Python3'

cannot load 'Python3'

系统:Mac 10.14.6

Python3 命令行调用良好,报这个错,请问如何解决?

讲讲架构

可不可以讲讲你的架构,我想参考你的架构做个程序。
我知道你的程序是使用 Python 调用 selenium ,但是你这个图形界面是怎么搞的?
期望有时间出个架构图和简单讲解,谢谢大神。

多个流程节点提取不同数据的问题

我在流程中的不同节点提取不同的数据,但是我发现每次都生成新的一行数据。
比如我在4个节点提取4个字段,会生成4条数据,最后一条数据是完整。

这个是我使用方式不正确吗?应该如何设置?

ocr识别

大佬,可以修改源码调用的tesserract库吗,有的话是在哪个代码文件

Windows下使用命令行执行程序流程

Windows x64下想要使用命令行执行程序,需要以下操作:

  1. 调用任务时在下方获得任务执行号,记住这个执行ID

image

  1. V0.3.0及以上版本,点击下方使用命令行执行任务按钮即可获得命令行指令:

image
image

  1. 复制提示的命令到Windows PowerShell即可通过命令行执行命令:

image

  1. 有关命令行参数的说明,请查看以下文档:

https://github.com/NaiboWang/EasySpider/wiki/Argument-Instruction

其中,配置目录地址写在了上图config.json文件的absolute_user_data_folder字段中;为0则为纯净版浏览器。

image


Windows x32位下使用命令行,只需将上面命令路径中的chrome_win64改为chrome_win32即可:

./EasySpider/resources/app/chrome_win32/easyspider_executestage.exe --id 4 --user_data 1 --server_address http://localhost:8074

Originally posted by @NaiboWang in #22 (comment)

JavaScript error

本人mac,版本11.6.7,之前下载了0.3.1版本,能成功打开、成功使用。但是在复现作者mac版ebay案例的视频时,结果csv始终为空。后来终端报错“cannot create temporary directory”、"Failed to extract ...: decompression resulted in return code -1!"。再后来EasySpider已经无法打开,报错如下:
截屏2023-06-05 11 49 17

截屏2023-06-05 11 49 29

望作者回复!

MAC系统提示错误

系统版本 macos Ventura 13.3.1 (a)
按照B站教程 结果最后提示:
Cannot automatically check new version, please use the following command to check whether a new version avaliable and upgrade by pip:
pip index versions commandline_config
pip install commandline --upgrade
Error in atexit._run_exitfuncs:
Traceback (most recent call last):
File "easyspider_executestage.py", line 674, in clean
File "easyspider_executestage.py", line 660, in saveData
TypeError: can only concatenate str (not "NoneType") to str

Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.
不知道怎么回事

滚动到底部问题

设置打开页面并滚动底部,如果不设置滚动次数,并不会实现滚动的操作,且次数如果不够,也是不会实现滚动到底部的目标。不知道是我设置的问题还是程序本身的问题。

任务流程有多个提取数据操作时,软件的执行和输出逻辑

按照软件逻辑来说,数据交错应该每隔两行的数据是对应好的,因为软件本身的逻辑是每一个提取数据操作执行完成后都会输出一行,你的任务流有两个提取数据操作,因此每一轮采集都会输出两行,偶数行的数据是对应的。如第一个提取数据由字段A,B,C组成,第二个由D,E组成,那么第1轮采集时,软件会先填充ABC输出一行,再填充DE并保留之前ABC的值再输出一行。下一轮采集时,第一次ABC的值会变成第2次的新值,DE的值仍然是第一次的旧值;第二次ABC的值保留,DE的值变成第二次的新值,用表格表示即:

image

也就是说,流程中有几个提取数据的操作,每一轮执行就会生成几行。

因此,加粗部分的值应该是一一对应好的值,其余的值可以删掉,你用excel简单操作一下就可以了,可以看一下数据是不是我说的这样子。

另外另一个解决方案是使用即将发布的v0.3.0版本,新版本支持采集打开页面的标题,就不需要先提取总览数据再提取明细页数据了。

Originally posted by @NaiboWang in #34 (comment)

EasySpider不能跳转

感谢大佬的项目,调试最新的3.0版本出现问题,无论是源代码运行还是软件,创建新任务时,EasySpider界面并没有进入编辑流程,源代码运行甚至会出现闪退,重启之后不闪退,仍无法进入编辑流程界面

移动到元素问题

我不清楚是我操作理解问题还是有bug哈。我先描述下情况,网页是瀑布楼的,我先滚动列表页页到底部,然后使用移动到元素(目的是回到列表页第一个元素进行后续操作),但发现移动不了(也尝试直接点击不添加移动,也不行),提示找不到这个元素。
感谢提供这么好的工具!

openPage
Loading page: https://civitai.com/images
Click
Click
Cannot find element://*[@id="913751"]/div[1]/a[1]/img[1], please try to set the wait time before executing this operation
Message: javascript error: Cannot read properties of null (reading 'click')
(Session info: chrome=113.0.5672.93)
Stacktrace:
Backtrace:
GetHandleVerifier [0x00C18893+48451]
(No symbol) [0x00BAB8A1]
(No symbol) [0x00AB5058]
(No symbol) [0x00AB83F1]
(No symbol) [0x00AB9DEB]
(No symbol) [0x00B0CDD9]
(No symbol) [0x00AFA2BC]
(No symbol) [0x00B0C482]
(No symbol) [0x00AFA0B6]
(No symbol) [0x00AD7E08]
(No symbol) [0x00AD8F2D]
GetHandleVerifier [0x00E78E3A+2540266]
GetHandleVerifier [0x00EB8959+2801161]
GetHandleVerifier [0x00EB295C+2776588]
GetHandleVerifier [0x00CA2280+612144]
(No symbol) [0x00BB4F6C]
(No symbol) [0x00BB11D8]
(No symbol) [0x00BB12BB]
(No symbol) [0x00BA4857]
BaseThreadInitThunk [0x76467D59+25]
RtlInitializeExceptionChain [0x7729B74B+107]
RtlClearBits [0x7729B6CF+191]

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.