首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用css选择器实现带条件的子虚乌有

使用css选择器实现带条件的子虚乌有
EN

Stack Overflow用户
提问于 2020-12-01 11:24:46
回答 1查看 641关注 0票数 0

想知道条件css选择器是否适用于iMacros?我想运行一个网络刮刀。下面的选择器使用的是网络刮铬扩展,但它不适用于iMacros。

选择器:

代码语言:javascript
复制
div.s-expand-height:has(span.a-price.a-text-price), .celwidget div.s-item-container:has(span.a-price.a-text-price), div.s-include-content-margin:has(span.a-price.a-text-price)

我用以下格式对iMacros进行了尝试,但不起作用

格式1

代码语言:javascript
复制
TAG POS=7 TYPE=DIV ATTR=CLASS:"s-expand-height:has(span a-price.a-text-price), celwidget s-item-container:has(span.a-price.a-text-price), s-include-content-margin:has(span.a-price.a-text-price)" EXTRACT=TXT

格式2

代码语言:javascript
复制
TAG POS=7 TYPE=DIV ATTR=CLASS:"div.s-expand-height:has(span.a-price.a-text-price), .celwidget div.s-item-container:has(span.a-price.a-text-price), div.s-include-content-margin:has(span.a-price.a-text-price)" EXTRACT=TXT

我完整的iMacros脚本如下所示。

代码语言:javascript
复制
SET !DATASOURCE E:\imacros\urllist1.csv
SET !LOOP 2
SET !DATASOURCE_LINE {{!LOOP}}

URL GOTO={{!COL1}}
WAIT SECONDS={{!COL2}}

TAG POS=7 TYPE=DIV ATTR=CLASS:"s-expand-height:has(span.a-price.a-text-price), .celwidget s-item-container:has(span.a-price.a-text-price), s-include-content-margin:has(span.a-price.a-text-price)" EXTRACT=TXT
ADD !EXTRACT {{!URLCURRENT}}

'TAG POS=1 TYPE=DIV ATTR=CLASS:"s-expand-height s-include-content-margin s-border-bottom s-latency-cf-section" EXTRACT=TXT

SAVEAS TYPE=EXTRACT FOLDER=E:\imacros FILE=data.csv
EN

回答 1

Stack Overflow用户

发布于 2020-12-04 11:51:38

好吧,对任何“感兴趣的人”来说,我在#OP的并行螺纹上iMacros论坛上发布了一个解决方案,主要是使用‘相对定位’来实现我所理解的,$OP想要的功能,应用于他们给出的网站和网页,例如.

下面是我发布的“短”脚本,整个线程包含(更多的)更多信息和一个带有我使用的所有Debug Info /技术的“完整”脚本.:

代码语言:javascript
复制
VERSION BUILD=8820413 RECORDER=FX
SET !EXTRACT_TEST_POPUP NO
SET !TIMEOUT_STEP 2

'SET !LOOP 1

TAB T=1
'URL GOTO=https://www.amazon.com/s?rh=n%3A1055398%2Cn%3A%211063498%2Cn%3A284507%2Cn%3A289814&lo=image&qid=1606931446&ref=lp_289814_il_ti_kitchen

'Extract 'Original Price' (Striked through):
'TAG POS=2 TYPE=SPAN ATTR=TXT:$14.95
'TAG POS=3 TYPE=SPAN ATTR=CLASS:"a-price a-text-price"&&DATA-A-STRIKE:"true"&&TXT:$*$* EXTRACT=HTM
SET !EXTRACT NULL
'TAG POS=3 TYPE=SPAN ATTR=CLASS:"a-price a-text-price"&&DATA-A-STRIKE:"true"&&TXT:$*$* EXTRACT=TXT
TAG POS={{!LOOP}} TYPE=SPAN ATTR=CLASS:"a-price a-text-price"&&DATA-A-STRIKE:"true"&&TXT:$*$* EXTRACT=TXT
SET Orig_Price EVAL("var s='{{!EXTRACT}}'; var x,y,z; x=s.split('$'); y=x[1]; z='$'+y; z;")

'Extract 'Discount Price':
SET !EXTRACT NULL
TAG POS=R-1 TYPE=SPAN ATTR=CLASS:"a-price"&&TXT:$*$* EXTRACT=TXT
SET Discount_Price EVAL("var s='{{!EXTRACT}}'; var x,y,z; x=s.split('$'); y=x[1]; z='$'+y; z;")

'Extract 'Description':
'TAG POS=1 TYPE=H2 ATTR=TXT:Genuine<SP>Instant<SP>Pot<SP>Tempered<SP>Glass<SP>Lid,<SP>9* EXTRACT=HTM
SET !EXTRACT NULL
TAG POS=R-1 TYPE=H2 ATTR=TXT:* EXTRACT=TXT
SET Descr EVAL("var s='{{!EXTRACT}}'; var z=s.trim(); z;")

PROMPT LOOP:<SP>_{{!LOOP}}_<BR><BR>Descr:<SP>_{{Descr}}_<BR>Discount_Price:<SP>_{{Discount_Price}}_<BR>Original_Price:<SP>_{{Orig_Price}}_

脚本编写和测试使用iMacros为FF v8.8.2,PM版本26.3.3,Win10_x64。

(需要环.)

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

https://stackoverflow.com/questions/65089608

复制
相关文章

相似问题

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