CN112384940A - 用于web爬取电子商务资源页面的机制 - Google Patents

用于web爬取电子商务资源页面的机制 Download PDF

Info

Publication number
CN112384940A
CN112384940A CN201980043893.9A CN201980043893A CN112384940A CN 112384940 A CN112384940 A CN 112384940A CN 201980043893 A CN201980043893 A CN 201980043893A CN 112384940 A CN112384940 A CN 112384940A
Authority
CN
China
Prior art keywords
page
resource
paths
path
product
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201980043893.9A
Other languages
English (en)
Inventor
奥尔加·沙舍夫斯基
纳达夫·韦斯曼
兰·尤赫特曼
斯马达尔·加兹特
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
PayPal Pte Ltd
PayPal Inc
Original Assignee
PayPal Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by PayPal Inc filed Critical PayPal Inc
Publication of CN112384940A publication Critical patent/CN112384940A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0623Item investigation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9566URL specific, e.g. using aliases, detecting broken or misspelled links
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0633Lists, e.g. purchase orders, compilation or processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

一种计算机系统标识对应于第一资源的平台,其中在第一资源中包括一个或多个资源页面。所述计算机系统确定对应于所标识的平台的一个或多个x‑path。计算机系统利用一个或多个x‑path中的至少第一x‑path来将产品添加到与第一资源相关联的数字购物车。响应于将产品添加到与第一资源相关联的数字购物车,计算机系统利用一个或多个x‑path中的至少第二x‑path来访问一个或多个资源页面中的第一资源页面,其中第一资源页面是结帐页面。计算机系统确定位于第一资源页面内的一个或多个元素是否有效。

Description

用于WEB爬取电子商务资源页面的机制
相关申请的交叉引用
本申请是2018年6月29日提交的美国专利申请No.16/023,616的继续申请并要求其优先权,通过引用将该美国专利申请整体并入本文。
技术领域
本公开涉及电子商务资源页面,并且更具体地,本公开涉及用于web爬取(crawl)电子商务资源页面的更有效方式。
背景技术
对于诸如web索引和更新web内容之类的某些任务,web爬取器是极其有用的工具。Web爬取器通常从要访问的统一资源定位符(URL)的列表开始,这些URL有时可以被称为“种子(seeds)”。随着web爬取器访问这些URL,它标识页面中的所有超链接并将它们添加到要访问的URL的列表,从而将该列表存储在称为“爬取链接工厂(crawl frontier)”的数据结构中。然而,使用web爬取器的一个主要缺点是对诸如结帐页面之类的某些电子商务网页的访问可能并不容易进行访问,因为为了访问结帐页面,相关联的购物车通常必须在里面具有诸如产品之类的物品。具有允许web爬取器访问电子商务网站的所有页面的机制将是有利的。
附图说明
图1根据实施例图示了web爬取器系统。
图2、图3和图4是根据实施例图示了图1的web爬取器程序的操作的流程图,所述操作包括:标识对应于平台的一个或多个x-path,并进一步利用该一个或多个x-path来访问结帐页面,并且确定是否需要更新结账页面上的一个或多个元素。
图5根据实施例图示了web爬取器112标识多个x-path以访问结账页面的特定示例。
图6是根据实施例描绘了图1的web爬取器系统的硬件组件的框图。
具体实施方式
本公开的实施例提供了一种系统、方法、以及程序产品。一种计算机系统标识对应于第一资源的平台,其中,第一资源包括一个或多个资源页面。该计算机系统确定对应于所标识的平台的一个或多个x-path。该计算机系统利用一个或多个x-path中的至少第一x-path来将产品添加到与第一资源相关联的数字购物车。响应于将产品添加到与第一资源相关联的数字购物车,该计算机系统利用一个或多个x-path中的至少第二x-path来访问一个或多个资源页面中的第一资源页面,其中,第一资源页面是结帐页面。该计算机系统确定位于第一资源页面内的一个或多个元素是否有效。
在示例实施例中,本公开描述了一种解决方案,该解决方案描述了标识对应于网站的平台(诸如“Shopify”,Shopify是Shopify公司的注册商标),并且进一步标识对应于该平台的一个或多个x-path。在示例实施例中,本公开还描述了利用可以包括分别对应于下述各项的x-path的一组x-path以便验证网站上的一个或多个元素(诸如广告、横幅、用户界面元素等):产品列表页面、产品页面、“添加到购物车”按钮、以及结帐页面。如以上所陈述的,目前由于只有一旦已将诸如产品之类的物项添加到数字购物车才可访问结帐页面,所以web爬取器可能无法访问结帐页面。本公开通过描述一种自动化系统来描述对此问题的解决方案,在该自动化系统中web爬取器可以能够标识一组x-path,该组x-path可被用于将产品自动添加到数字购物车,然后进一步访问结帐页面,使得可检查结帐页面上的一个或多个元素的有效性。
此外,在另外的实施例中,本公开描述了一种用于对应用执行类似过程的解决方案。
现在将参考附图详细描述本公开的实施例。
图1根据实施例图示了web爬取器系统100。在示例实施例中,web爬取器系统100包括经由网络130互连的服务器110、web服务器120和web服务器140。
在示例实施例中,网络130是互联网,表示用于支持连接到互联网的设备之间进行的通信的网络和网关的全球集合。网络130可以包括例如有线、无线或光纤连接。在其他实施例中,可以将网络130实现为内部网、蓝牙网络、局域网(LAN)、或广域网(WAN)。一般而言,网络130可以为将支持计算设备之间(例如服务器110与web服务器140之间)进行的通信的连接和协议的任何组合。
在示例实施例中,web服务器120包括网站122。在示例实施例中,web服务器120可以为台式计算机、膝上型计算机、平板计算机、移动设备、手持设备、瘦客户端、或能够经由网络130向诸如服务器110之类的其他计算设备发送数据并从其接收数据的任何其他电子设备或计算系统。尽管未示出,但是可选地,web服务器120能够包括执行相同软件以共同地处理如由前端服务器和负载均衡器所分发的请求的服务器的集群。在示例实施例中,web服务器120是为支持驻留在web服务器120上的网站(诸如网站122)并且为支持与驻留在web服务器120上的网站有关的网络请求所优化的计算设备。关于各图更详细地描述了Web服务器120。
在示例实施例中,网站122是文件的集合,包括例如HTML文件、CSS文件、图像文件和JavaScript文件。网站122也可以包括诸如音频文件和视频文件之类的其他资源文件。关于各图更详细地描述了网站122。
在示例实施例中,web服务器140包括网站142。在示例实施例中,web服务器140可以为台式计算机、膝上型计算机、平板计算机、移动设备、手持设备、瘦客户端、或能够经由网络130从诸如服务器110之类的其他计算设备接收数据并向其发送数据的任何其他电子设备或计算系统。此外,在示例实施例中,web服务器140是为支持驻留在web服务器140上的网站(诸如网站142)并且为支持与驻留在web服务器140上的网站有关的网络请求所优化的计算设备。尽管未示出,但是可选地,web服务器140能够包括执行相同软件以共同地处理如由前端服务器和负载均衡器所分发的请求的服务器的集群。关于各图对web服务器140进行了更详细地描述。
在示例实施例中,网站142是文件的集合,包括例如HTML文件、CSS文件、图像文件和JavaScript文件。网站142也可以包括诸如音频文件和视频文件之类的其他资源。关于各图对网站142进行了更详细地描述。
在示例实施例中,服务器110包括web爬取器112、浏览器114、元素数据库118、以及x-path数据库119。在示例实施例中,服务器110可以为台式计算机、膝上型计算机、平板计算机、移动设备、手持设备、瘦客户端、或能够经由网络130从诸如web服务器120之类的其他计算设备接收数据并向其发送数据的任何其他电子设备或计算系统。此外,在示例实施例中,服务器110是为支持驻留在服务器110上的程序和数据库(诸如web爬取器112和元素数据库118)所优化的计算设备。尽管未示出,但是可选地,服务器110能够包括执行相同软件以共同地处理如由前端服务器和负载均衡器所分发的请求的服务器的集群。关于各图对服务器110进行了更详细地描述。
在示例实施例中,浏览器114是能够与其他计算设备进行通信以传送请求并接收信息的应用。此外,浏览器114能够向服务器110的用户显示接收到的信息。在示例实施例中,浏览器114可以向网站142传送请求,并且进一步从网站142接收网页信息。此外,在一个或多个实施例中,web爬取器112可以利用浏览器114的功能性来访问一个或多个网站,诸如网站122和/或网站142。关于各图对浏览器114进行了更详细地描述。
在示例实施例中,元素数据库118是包括对应于实体(或不止一个实体)的一个或多个元素(诸如特定公司的横幅广告)的网站的列表的数据库。此外,数据库118可以额外地表示元素以及元素在每个具体网站内的位置。例如,数据库118可以包括已知具有对应于金融公司的横幅广告的网站的列表。此外,数据库118可以包括标识每个横幅广告被检查有效性的最后时间/日期并进一步标识最后已知的状态(有效、需要更新等)的信息。另外,元素数据库118可以包括与实体或实体组相对应的当前有效元素的列表。
在示例实施例中,x-path数据库119包括包含一个或多个平台以及对应于该一个或多个平台中的每一者的一个或多个x-path的信息。此外,在示例实施例中,一个或多个平台可以包括诸如Shopify(
Figure BDA0002865347350000051
是Shopify公司的商标)之类的平台,可以利用该平台创建诸如电子商务网站之类的网站。例如,第一平台可以对应于用于访问与产品的列表相关联的页面的第一组x-path、用于访问产品页面的第二组x-path、用于将产品添加到数字购物车的第三组x-path、以及用于访问结帐页面的第四组x-path。在示例实施例中,web爬取器112可以访问x-path数据库119以标识对应于与正被分析的网站相关联的特定平台的(一个或多个)x-path。关于各图对元素数据库118和x-path数据库119进行了更详细地描述。
在示例实施例中,Web爬取器112是能够浏览互联网以便验证存在于网站中的一个或多个元素的软件应用。在示例实施例中,web爬取器112能够访问元素数据库118以标识需要被分析的一个或多个网站。此外,在示例实施例中,web爬取器112能够标识与正被分析的网站相关联的平台。另外,web爬取器112能够访问x-path数据库119以标识与将诸如产品之类的物项添加到购物车并且进一步访问网站的结帐页面相关联的一个或多个x-path。附加地,在示例实施例中,web爬取器112能够分析网站上的元素以标识该元素是否有效(或者需要进行更新)。关于各图对web爬取器112进行了更详细地描述。
此外,在一个或多个实施例中,web爬取器112可以利用应用编程接口(API)与浏览器114进行通信并且进一步与数据库118进行通信。
图2至图4是根据实施例图示了包括下述步骤的web爬取器112的操作的流程图:在标识对应于平台的一个或多个x-path,并进一步利用该一个或多个x-path来访问结帐页面,并且确定是否需要更新结账页面上的一个或多个元素时。在示例实施例中,web爬取器112标识对应于要分析的网站(诸如网站122或网站142)对应的平台(步骤202)。在示例实施例中,web爬取器112通过与诸如BuildingWith(
Figure BDA0002865347350000061
是BuildedWith公司的注册商标)之类的技术剖析器应用进行通信来标识对应于要被分析的网站的平台。在其他实施例中,web爬取器112可以具有在与网站相关联的源代码内搜索特定技术签名和HTML标签的能力,并且进一步可以引用包括一个或多个平台和对应的特定技术签名/HTML标签的数据库,以便标识与该网站相关联的平台。
在示例实施例中,web爬取器112确定对应于所标识的平台的一个或多个x-path(步骤204)。在示例实施例中,web爬取器112访问x-path数据库119并且标识对应于平台的一个或多个x-path。在示例实施例中,一个或多个x-path可以包括与访问产品列表页面相关联的(一个或多个)x-path、与访问产品页面相关联的(一个或多个)x-path、与访问添加到购物车元素相关联的(一个或多个)x-path、以及与访问结帐页面相关联的(一个或多个)x-path。
Web爬取器112确定与(访问)产品列表页面相关联的(一个或多个)x-path是否起作用(判定206)。在示例实施例中,一个或多个x-path可以与访问产品列表页面相关联。因此,在示例实施例中,web爬取器112可以试图利用与产品列表页面相关联的一个或多个x-path中的第一x-path(从x-path数据库119获得)来访问产品列表页面,并且如果未成功地访问该页面,则web爬取器112确定第一x-path不起作用(web爬取器112然后可以更新x-path数据库119以指示第一x-path不起作用)。此外,在示例实施例中,如果存在不止一个与产品列表页面相关联的x-path,则web爬取器112然后可以试图利用与产品列表页面相关联的一个或多个x-path中的第二x-path来访问产品列表页面以确定第二x-path是否起作用。如果第二x-path不起作用,则web爬取器112可以确定与访问产品列表相关联的其他x-path是否起作用(按照如上所述的类似方式),直到标识出起作用的x-path为止或直到所有x-path都已被测试为止。如果能够利用一个或多个x-path中的至少一者来访问产品列表页面,则web爬取器112确定与该产品列表页面相关联的(一个或多个)x-path起作用。如果一个或多个x-path中没有至少一者能用于访问产品列表页面,则web爬取器112确定与该产品列表页面相关联的(一个或多个)x-path不起作用。
如果web爬取器112确定与产品列表页面相关联的x-path不起作用(判定206,“否”分支),则web爬取器112执行正常web爬取过程(步骤208)。在示例实施例中,正常web爬取过程可以包括对可由web爬取器112访问的页面上的界面元素加索引并进行验证。
如果web爬取器112确定与产品列表页面相关联的(一个或多个)x-path起作用(判定206,“是”分支),则web爬取器112利用该x-path来访问产品列表页面(步骤210)。
Web爬取器112确定与(访问)第一产品页面相关联的(一个或多个)x-path是否起作用(判定212)。在示例实施例中,产品列表页面可以包括对应于一个或多个产品的一个或多个界面元素。web爬取器112可以试图利用与产品列表页面上的第一产品的页面相关联的x-path(从x-path数据库119获得)来访问与第一产品相关联的页面,如果未成功地访问页面,则web爬取器112确定与第一产品页面相关联的x-path不起作用(web爬取器112然后可以更新x-path数据库119以指示该x-path不起作用)。此外,在示例实施例中,如果在x-path数据库119中存在不止一个与第一产品页面相关联的x-path,则web爬取器112然后可以试图利用与第一产品页面相关联的其他x-path来访问第一产品页面(按照如上所述的类似方式),直到标识出起作用的x-path为止或直到所有x-path都已被测试为止。如果能够利用一个或多个x-path中的至少一者来访问第一产品页面,则web爬取器112确定与第一产品页面相关联的x-path起作用。如果一个或多个x-path中没有至少一者能用于访问第一产品页面,则web爬取器112确定与第一产品页面相关联的x-path不起作用。
如果web爬取器112确定与第一产品页面相关联的(一个或多个)x-path不起作用(判定212,“否”分支),则web爬取器112确定与另一产品页面相关联的(一个或多个)x-path是否起作用(判定214)。如上所述,产品列表页面可以包括多个产品的列表,其中每个产品具有对应的页面。因此,在示例实施例中,web爬取器112可以按照如上所述的相同方式(在对第一产品页面的讨论中)确定与另一产品页面相关联的(一个或多个)x-path是否起作用。此外,在示例实施例中,产品页面中的每一者均可以与一个或多个x-path相关联,并且因此,一个或多个x-path中的每一者均可以用于试图访问对应的产品页面以便确定该x-path是否起作用。
如果web爬取器112确定与其他产品页面相关联的(一个或多个)x-path不起作用(判定214,“否”分支),则web爬取器112执行正常web爬取过程(步骤208)。
如果web爬取器112确定与第一产品页面相关联的(一个或多个)x-path起作用(判定212,“是”分支),或者如果web爬取器112确定与另一产品页面相关联的(一个或多个)x-path起作用(判定214,“是”分支),则web爬取器112利用该x-path来访问对应的产品页面,即第一产品页面(步骤216)。
web爬取器112确定与(访问)“添加到购物车”元素相关联的(一个或多个)x-path是否起作用(判定302)。在示例实施例中,一个或多个x-path可以与访问“添加到购物车”元素相关联。因此,在示例实施例中,web爬取器112可以试图利用与“添加到购物车”元素相关联的一个或多个x-path中的第一x-path(从x-path数据库119获得)来访问“添加到购物车”元素,并且如果未成功地访问“添加到购物车元素”,则web爬取器112确定第一x-path不起作用(web爬取器112然后可以更新x-path数据库119以指示第一x-path不起作用)。此外,在示例实施例中,如果在x-path数据库119中存在不止一个与“添加到购物车”元素相关联的x-path,则web爬取器112可以试图通过利用与“添加到购物车”元素相关联的其他x-path来访问“添加到购物车”元素(按照如上所述的类似方式),直到标识出起作用的x-path为止或直到所有x-path都已被测试为止。如果一个或多个x-path中的至少一者能够用于访问“添加到购物车”元素,则Web爬取器112确定与“添加到购物车”元素相关联的x-path起作用。如果一个或多个x-path中没有至少一者能用于访问“添加到购物车”元素,则web爬取器112确定与“添加到购物车”元素相关联的x-path不起作用。
在示例实施例中,“添加到购物车”元素可以是指在产品页面上可以用于将产品添加到数字购物车的用户界面元素。例如,对应于第一产品的产品页面可以包括“添加到购物车”用户界面元素,在该用户界面元素被选择的情况下,将第一产品添加到数字购物车。因此,web爬取器112可以利用与“添加到购物车”元素相关联的(一个或多个)x-path来试图访问产品页面上的“添加到购物车”元素,以便将产品添加到数字购物车。
如果web爬取器112确定与“添加到购物车”元素相关联的x-path不起作用(判定302,“否”分支),则web爬取器112执行正常web爬取过程(步骤306,与步骤208相同)。在示例实施例中,正常web爬取过程可以包括对可由web爬取器112访问的页面上的界面元素加索引并进行验证。
如果web爬取器112确定与“添加到购物车”元素相关联的(一个或多个)x-path起作用(判定302,“是”分支),则web爬取器112利用该x-path来访问“添加到购物车”元素(步骤304),这可能导致将产品添加到数字购物车。在示例实施例中,如本文所使用的术语“产品”可以是指产品(诸如肥皂条、洗涤剂、活动门票等)和/或服务(诸如订阅)。
Web爬取器112确定与(访问)数字购物车页面相关联的(一个或多个)x-path是否起作用(判定308)。在示例实施例中,一个或多个x-path可以与访问数字购物车页面相关联。因此,在示例实施例中,web爬取器112可以试图利用与数字购物车页面相关联的一个或多个x-path中的第一x-path(从x-path数据库119获得)来访问数字购物车页面,并且,如果未成功地访问数字购物车页面,则web爬取器112确定第一x-path不起作用(web爬取器112然后可以更新x-path数据库119以指示第一x-path不起作用)。此外,在示例实施例中,如果在x-path数据库119中存在不止一个与数字购物车页面相关联的x-path,则web爬取器112然后可以试图通过利用与数字购物车页面相关联的其他x-path来访问数字购物车页面(按照如上所述的类似方式),直到标识出起作用的x-path为止或直到所有x-path都已被测试为止。如果一个或多个x-path中的至少一者能够用于访问数字购物车页面,则web爬取器112确定与该数字购物车页面相关联的x-path起作用。如果一个或多个x-path中没有至少一者能用于访问数字购物车页面,则web爬取器112确定与数字购物车页面相关联的x-path不起作用。
如果web爬取器112确定与数字购物车页面相关联的(一个或多个)x-path不起作用(判定308,“否”分支),则web爬取器112执行正常web爬取过程(步骤306,与步骤208相同)。在示例实施例中,正常web爬取过程可以包括对可由web爬取器112访问的页面上的界面元素加索引并进行验证。
如果web爬取器112确定与数字购物车页面相关联的(一个或多个)x-path起作用(判定308,“是”分支),则web爬取器112利用该x-path来访问数字购物车页面(步骤310)。
web爬取器112确定与(访问)结帐页面相关联的(一个或多个)x-path是否起作用(判定312)。在示例实施例中,一个或多个x-path可以与访问结帐页面相关联。因此,在示例实施例中,web爬取器112可以试图利用与结帐页面相关联的一个或多个x-path中的第一x-path(从x-path数据库119获得)来访问结账页面,并且如果未成功访问结帐页面,则web爬取器112确定第一x-path不起作用(web爬取器112然后可以更新x-path数据库119以指示第一x-path不起作用)。此外,在示例实施例中,如果在x-path数据库119中存在不止一个与结帐页面相关联的x-path,则web爬取器112然后可以试图通过利用与结帐页面相关联的其他x-path来访问结帐页面(按照如上所述的类似方式),直到标识出起作用的x-path为止或直到所有x-path都已被测试为止。如果一个或多个x-path中的至少一者能够用于访问结帐页面,则Web爬取器112确定与该结帐页面相关联的x-path起作用。如果一个或多个x-path中没有至少一者能被用于访问结帐页面,则web爬取器112确定与该结帐页面相关联的x-path不起作用。
如果web爬取器112确定与结帐页面相关联的(一个或多个)x-path不起作用(判定312,“否”分支),则web爬取器112执行正常web爬取过程(步骤306,与步骤208相同)。在示例实施例中,正常web爬取过程可以包括对可由web爬取器112访问的页面上的界面元素加索引并进行验证。
如果web爬取器112确定与结帐页面相关联的(一个或多个)x-path起作用(判定312,“是”分支),则web爬取器112利用该x-path来访问结帐页面(步骤314)。
web爬取器112标识结帐页面上的一个或多个元素(步骤402)。在示例实施例中,web爬取器112可以标识对应于特定实体的一个或多个元素,诸如特定公司的横幅广告。在其他实施例中,web爬取器112可以标识对应于不止一个实体的一个或多个元素。在示例实施例中,web爬取器112可以引用元素数据库118以标识对应于正被分析的网站(诸如网站122)的一个或多个元素类型。Web爬取器112然后可以利用元素数据库118中的信息来标识在结帐页面上是否存在对应于网站的一个或多个元素类型中的任一种。在示例实施例中,web爬取器112可以在结账页面上搜索(在HTML代码内)诸如链接和/或图像之类的元素类型。例如,web爬取器112可以搜索与对应于元素类型的关键词(诸如对应于横幅广告的关键词)。此外,在这些一个或多个实施例中,web爬取器112可以在对应于链接和/或图像的HTML代码内搜索诸如实体名称之类的关键词,以便确定这些链接和/或图像是否对应于实体或一个或多个实体。在一个或多个实施例中,不是搜索对应于所标识的元素类型的关键词,而是web爬取器112可以搜索对应于实体(或不止一个实体)的关键词,以便标识结账页面上的一个或多个元素。在附加示例中,web爬取器112还可以搜索对应于先前使用的横幅广告(过时的横幅广告)的关键词。换句话说,如果实体名称已发生改变,则web爬取器112可以搜索包括该实体名称以及先前使用的实体名称的横幅广告。
web爬取器112可以确定在结帐页面上标识的一个或多个元素是否有效(判定404)。在示例实施例中,web爬取器112可以通过将所标识的一个或多个元素与包含在元素数据库118中的一列有效元素进行比较来确定所标识的一个或多个元素是否有效。在示例实施例中,元素数据库118可以包括对应于每个实体(或实体集)的一系例列有效元素。例如,元素数据库118可以包括对应于第一实体的一列有效横幅广告。在此示例中,元素数据库118可以将所标识的一个或多个元素(其可以为对应于第一实体的横幅广告)与对应于第一实体的该列有效横幅广告进行比较,以便确定所标识的一个或多个元素是否有效。此外,在示例实施例中,web爬取器112可以标识对应于一个或多个元素中的每一者的元素类型(横幅广告等),并且与元素数据库118中也对应于该元素类型的有效元素进行比较(即,将横幅广告与横幅广告进行比较)。
如果web爬取器112确定在结帐页面上标识的一个或多个元素有效(判定404,“是”分支),则web爬取器112继续为其他网页或另一网站执行web爬取功能。此外,web爬取器112可以更新元素数据库118以指示一个或多个元素有效。如果web爬取器112确定在结帐页面上标识的一个或多个元素中的至少一个元素无效(判定404,“否”分支),则web爬取器112更新元素数据库118以指示该至少一个元素无效(步骤406)。在示例实施例中,如果不存在针对该至少一个元素的条目,则与对应的网站(和实体)相关联地在元素数据库118中创建条目,并且进一步表示该元素无效的指示。此指示可能会引起管理员注意该元素,管理员可能会努力更新该元素以使其有效(或从网站删除该元素)。例如,如果web爬取器112确定存在于第一网站(由第二实体拥有)上的元素(与第一实体相关联)无效,则web爬取器112可以更新元素数据库118以指示位于第一网站上并且与第一实体相关联的元素无效,因此需要引起注意。此外,如果一个或多个元素中的至少一个元素被确定为有效,则web爬取器112可以更新元素数据库118以指示该至少一个元素有效。
虽然在图2、图3、和图4的讨论中未提及,但是在访问网站(诸如网站122或网站142)的产品列表页面、产品页面、以及其他页面的同时,web爬取器112可以执行验证技术以确定对应于所访问的页面的一个或多个元素是否有效(按照如上所述的类似方式)。web爬取器112可以进一步基于验证确定来更新对应于相关联的网站(和实体)的元素数据库118。
此外,尽管在示例实施例中,web爬取器112访问x-path数据库119并且在使用对应于所标识的平台的一个或多个x-path之前确定这些x-path,但是在其他实施例中,web爬取器112可以访问x-path数据库119,并且根据需要确定每个x-path类型。例如,web爬取器112可以访问x-path数据库119以确定与访问产品列表页面相关联的(一个或多个)x-path,并且可以在访问产品列表页面之后确定与访问第一产品页面相关联的x-path,然后继续,直到到达结帐页面为止,如上所述。
此外,在示例实施例中,每个页面(产品列表页面、每个产品页面等)的多个x-path可以由管理员确定,或者可以由web爬取器112自动地确定。例如,web爬取器112可以通过利用机器学习技术来自动地标识每个x-path类型的变体(对应于产品列表页面的x-path可以为第一类型,对应于产品页面的x-path可以为第二类型)。例如,管理员可以手动标记利用于对应于一个平台或多个平台的网站的集合的一个或多个x-path(例如,标记具有描述对应的x-path类型的信息的x-path)。web爬取器112然后可以利用此信息来标识每个x-path类型的潜在变体。
另外,在示例实施例中,x-path数据库119可以额外地包括对应于移除被添加到数字购物车的产品的一个或多个x-path。按照如上所述的类似方式,web爬取器112可以试图利用这些一个或多个x-path中的每一者,直到标识出起作用的x-path为止。Web爬取器112可以利用所确定的起作用的x-path来移除被添加到数字购物车的产品。
图5根据实施例图示了web爬取器112标识多个x-path以访问结帐页面的特定示例。在示例实施例中,web爬取器112可以导航到网站,并且进一步地可以引用x-path数据库119以标识对应于与该网站相关联的平台的一个或多个x-path(该一个或多个x-path可以包括下面被搜索的x-path)。如下所述,可以利用x-path来试图访问结帐页面。为了导航到网站的产品列表页面,web爬取器112可以在网页的HTML代码内搜索具有“/collections”子域的链接,或者换句话说,搜索具有xpath:‘a[href*=“/collections”]’的链接(步骤502)。如果web爬取器112能够标识具有xpath:‘a[href*=“/collections”]’的链接,则web爬取器112利用该链接来访问产品列表页面。进一步地,为了导航到对应于在产品列表页面上列出的产品的产品页面,web爬取器112可以搜索具有xpath:‘a[href*=“/products”]’的链接(步骤504)。如果web爬取器112能够标识具有xpath:‘a[href*=“/products”]’的链接,则web爬取器利用该链接来访问对应的产品页面。
为了访问添加到购物车元素(将产品添加到数字购物车),web爬取器112可以搜索具有x-path:‘form[action*=:“/cart”]’*[type*=”submit”]’的链接(步骤506)。如果web爬取器112能够标识具有x-path:‘form[action*=:“/cart”]’*[type*=“submit”]’的链接,则web爬取器利用该链接来访问添加到购物车元素。为了访问数字购物车页面,web爬取器112可以搜索具有x-path:‘a[ref*=“/cart”]’的链接(步骤508)。如果web爬取器112能够标识具有x-path:‘a[ref*=“/cart”]’的链接,则web爬取器112可以利用该链接来访问数字购物车页面。
为了访问结帐页面,web爬取器112可以搜索具有x-path:‘a[ref*=“/checkout”]’的链接(步骤510)。如果web爬取器112能够标识具有x-path:‘a[ref*=“/checkout”]’的链接,则web爬取器112可以利用该链接来访问结帐页面。此外,在一个或多个实施例中,web爬取器112可以搜索x-path:7cart/change?line=1&quantity=o’,以便清空数字购物车。
已出于图示和描述的目的呈现了本公开的各种实施例的前面的描述。前面的描述不旨在为详尽的,也不将本公开限于所公开的精确形式。许多修改和变化是可能的。对于本领域的技术人员而言可能是显而易见的这样的修改和变化旨在被包括在如由所附权利要求所限定的本公开的范围内。
图6根据照实施例描绘了包含在图1的web爬取器系统100中的计算设备的组件的框图。应该领会,图6仅提供了一个实施方式的图示,而不暗示关于可以在其中实现不同实施例的环境的任何限制。可以对所描绘的环境做出许多修改。
计算设备可以包括全部通过通信结构618互连的一个或多个处理器602、一个或多个计算机可读RAM 604、一个或多个计算机可读ROM 606、一个或多个计算机可读存储介质608、设备驱动器612、读取/写入驱动器或接口614、网络适配器或接口616。通信结构618可以用为在处理器(诸如微处理器、通信和网络处理器等)、系统存储器、外围设备、以及系统内的任何其他硬件组件之间传递数据和/或控制信息所设计的架构来实现。
一个或多个操作系统610和一个或多个应用程序611(例如,web爬取器112)被存储在计算机可读存储介质608中的一者或多者上以供处理器602中的一者或多者执行并通过利用相应的RAM 604(其通常包括缓存存储器)中的一者或多者来执行。在所图示的实施例中,计算机可读存储介质608中的每一者均可以为内部硬盘驱动器的磁盘存储设备,CD-ROM,DVD,存储棒,磁带,磁盘,光盘,诸如RAM、ROM、EPROM、闪速存储器之类的半导体存储设备或可存储计算机程序和数字信息的任何其他计算机可读有形存储设备。
计算设备还可以包括用于从一个或多个便携式计算机可读存储介质626读取并写入到一个或多个便携式计算机可读存储介质626的R/W驱动器或接口614。计算设备上的应用程序611可以被存储在便携式计算机可读存储介质626中的一者或多个者,经由相应的R/W驱动器或接口614读取,并且被加载到相应的计算机可读存储介质608中。
计算设备还可以包括网络适配器或接口616,诸如TCP/IP适配器卡或无线通信适配器(诸如使用OFDMA技术的4G无线通信适配器)。可以经由网络(例如,互联网、局域网或其他广域网或无线网络)和网络适配器或接口616将计算设备上的应用程序611从外部计算机或外部存储设备下载到计算设备。可以从网络适配器或接口616将程序加载到计算机可读存储介质608上。网络可以包括铜线、光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。
计算设备还可以包括显示屏幕620和外部设备622,这些外部设备可以包括例如键盘、计算机鼠标和/或触摸板。设备驱动器612接口连接到显示屏幕620以进行成像,到外部设备622,和/或到显示屏幕620以用于压力感测字母数字字符键入和用户选择。设备驱动器612、R/W驱动器或接口614以及网络适配器或接口616可以包括硬件和软件(存储在计算机可读存储介质608和/或ROM 606上)。
本文描述的程序是基于在特定实施例中实现它们的应用来标识的。然而,应该领会,本文的任何特定程序术语是仅仅为了方便而使用的,因此本公开不应该限于仅仅在由这样的术语标识和/或暗示的任何特定应用中使用。
基于前文,已公开了一种计算机系统、方法、以及计算机程序产品。然而,可在不脱离本公开的范围的情况下做出许多修改和替换。因此,已通过示例而非限制的方式公开了各种实施例。
本公开的各种实施例可以为系统、方法、和/或计算机程序产品。计算机程序产品可以包括在其上具有用于使处理器执行本公开的各方面的计算机可读程序指令的一个或多个计算机可读存储介质。
计算机可读存储介质可以为可保留和存储指令以供指令执行设备使用的有形设备。计算机可读存储介质可以为例如但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备、或前述各项的任何合适的组合。计算机可读存储介质的更特定示例的非详尽列表包括下列的:便携式计算机软盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪速存储器)、静态随机存取存储器(SRAM)、便携式紧致盘只读存储器(CD-ROM)、数字通用盘(DVD)、存储棒、软盘、诸如穿孔卡或在上面记录有指令的凹槽中的凸起结构之类的机械编码设备、以及前述各项的任何合适的组合。如本文所使用的计算机可读存储介质不应被解释为本身是暂态信号,诸如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,通过光纤缆线的光脉冲)或通过电线传送的电信号。
本文描述的计算机可读程序指令可从计算机可读存储介质被下载到相应的计算/处理设备或者经由网络(例如,互联网、局域网、广域网、和/或无线网络)下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口从网络接收计算机可读程序指令并且转发这些计算机可读程序指令以供存储在相应的计算/处理设备内的计算机可读存储介质中。
用于执行本公开的操作的计算机可读程序指令可以为汇编程序指令、指令集架构(ISA)指令、机器指令、机器相关指令、微码、固件指令、状态设置数据、用于集成电路的配置数据、或用一种或多种编程语言的任何组合编写的源代码或目标代码,所述编程语言包括诸如Smalltalk、C++之类的面向对象编程语言以及诸如“C”编程语言或类似编程语言的过程编程语言。计算机可读程序指令可以完全在用户的计算机上、部分地在用户的计算机上、作为独立软件包、部分地在用户的计算机上并部分地在远程计算机上或者完全在远程计算机或服务器上执行。在后者场景中,远程计算机可以通过任何类型的网络(包括局域网(LAN)或广域网(WAN))连接到用户的计算机,或者可以做出到外部计算机的连接(例如,通过使用互联网服务提供商经由互联网来进行)。在一些实施例中,包括例如可编程逻辑电路、现场可编程门阵列(FPGA)、或可编程逻辑阵列(PLA)的电子电路可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令以使电子电路个性化,以便执行本公开的各方面。
在本文中参考根据本公开的实施例的方法、装置(系统)、以及计算机程序产品的流程图图示和/或框图描述本公开的各方面。应理解,可通过计算机可读程序指令来实现流程图图示和/或框图中的每个框以及流程图图示和/或框图中的各框的组合。
可以将这些计算机可读程序指令提供给通用计算机、专用计算机、或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现流程图和/或框图的一个或多个框中指定的功能/行为的手段。还可以将这些计算机可读程序指令存储在计算机可读存储介质中,这些计算机可读程序指令可指导计算机、可编程数据处理装置、和/或其他设备以特定方式起作用,使得在其中存储有指令的计算机可读存储介质包括包含实现流程图和/或框图的一个或多个框中指定的功能/行为的各方面的指令的制品。
还可以将计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上以使得在该计算机、其他可编程装置、或其他设备上执行一系列操作步骤以产生计算机实现的过程,使得在该计算机、其他可编程装置、或其他设备上执行的指令实现流程图和/或框图的一个或多个框中指定的功能/行为。
各图中的流程图和框图图示了根据本公开的各种实施例的系统、方法、以及计算机程序产品的可能的实施方式的架构、功能性、以及操作。在这方面,流程图或框图中的每个框可以表示指令的模块、段或部分,其包括用于实现所指定的(一个或多个)逻辑功能的一个或多个可执行指令。在一些替代实施方式中,各框中指出的功能可以不按各图中指出的次序发生。例如,取决于所涉及的功能性,实际上可以基本上并发地执行连续示出的两个框,或者有时可以以相反次序执行这些框。还应注意,框图和/或流程图图示中的每个框以及框图和/或流程图图示中的各框的组合可由基于专用硬件的系统来实现,这些基于专用硬件的系统执行所指定的功能或行为或者执行专用硬件和计算机指令的组合。

Claims (20)

1.一种计算机系统,包括:
一个或多个计算机可读存储器,所述一个或多个计算机可读存储器存储有程序指令;以及
一个或多个处理器,所述一个或多个处理器被配置为执行所述程序指令以使所述系统执行包括以下步骤的操作:
标识对应于第一资源的平台,其中,所述第一资源包括一个或多个资源页面;
确定对应于所标识的平台的一个或多个x-path;
利用所述一个或多个x-path中的至少第一x-path来将产品添加到与所述第一资源相关联的数字购物车;
响应于将所述产品添加到与所述第一资源相关联的所述数字购物车,利用所述一个或多个x-path中的至少第二x-path来访问所述一个或多个资源页面中的第一资源页面,其中,所述第一资源页面是结帐页面;并且
确定位于所述第一资源页面内的第一组一个或多个元素是否有效。
2.根据权利要求1所述的计算机系统,所述操作还包括:
响应于确定位于所述第一资源页面内的所述第一组一个或多个元素中的第一元素无效,更新元素数据库以指示所述第一元素无效。
3.根据权利要求1所述的计算机系统,所述操作还包括:
响应于确定位于所述第一资源页面内的所述第一组一个或多个元素中的第二元素有效,更新元素数据库以指示所述第二元素有效。
4.根据权利要求1所述的计算机系统,其中,利用所述一个或多个x-path中的至少第一x-path来将所述产品添加到与所述第一资源相关联的所述数字购物车包括:
利用所述一个或多个x-path中的第三x-path来访问产品列表页面;
利用所述一个或多个x-path中的第四x-path来访问针对所述产品的产品页面;并且
利用所述一个或多个x-path中的所述第一x-path来将所述产品添加到所述数字购物车。
5.根据权利要求4所述的计算机系统,其中,利用所述一个或多个x-path中的至少第一x-path来将所述产品添加到与所述第一资源相关联的所述数字购物车包括:
确定位于所述产品列表页面上的第二组一个或多个元素是否有效;并且
确定位于所述产品页面上的第三组一个或多个元素是否有效。
6.根据权利要求1所述的计算机系统,其中,利用所述一个或多个x-path中的至少第二x-path来访问所述第一资源页面包括:
利用所述一个或多个x-path中的第五x-path来试图获得对所述第一资源页面的访问;
响应于确定所述一个或多个x-path中的所述第五x-path不能被用来获得对所述第一资源页面的访问,更新x-path数据库以指示所述第五x-path不起作用。
7.根据权利要求1所述的计算机系统,其中,确定对应于所标识的平台的所述一个或多个x-path包括:访问x-path数据库以确定对应于所标识的平台的所述一个或多个x-path。
8.一种非暂态计算机可读介质,所述非暂态计算机可读介质存储有计算机可执行指令,所述计算机可执行指令响应于被一个或多个硬件处理器执行,而使所述一个或多个硬件处理器执行包括以下步骤的操作:
标识对应于第一资源的平台,其中,所述第一资源包括一个或多个资源页面;
确定对应于所标识的平台的一个或多个x-path;
利用所述一个或多个x-path中的第一组x-path来将产品添加到与所述一个或多个资源页面相关联的数字购物车,其中,利用所述第一组x-path来将所述产品添加到与所述一个或多个资源页面相关联的所述数字购物车包括:
利用所述第一组x-path中的第一x-path来访问产品列表页面;
利用所述第一组x-path中的第二x-path来访问针对产品的产品页面;
利用所述第一组x-path中的第三x-path来将所述产品添加到所述数字购物车;
响应于将所述产品添加到与所述第一资源相关联的所述数字购物车,利用所述一个或多个x-path中的第二组x-path来访问所述一个或多个资源页面中的第一资源页面,其中,所述第一资源页面是结帐页面;并且
确定位于所述第一资源页面内的第一组一个或多个元素是否有效。
9.根据权利要求8所述的非暂态计算机可读介质,所述操作还包括:
响应于确定位于所述第一资源页面内的所述第一组一个或多个元素中的第一元素无效,更新元素数据库以指示所述第一元素无效。
10.根据权利要求9所述的非暂态计算机可读介质,所述操作还包括:
响应于确定位于所述第一资源页面内的所述第一组一个或多个元素中的第二元素有效,更新所述元素数据库以指示所述第二元素有效。
11.根据权利要求8所述的非暂态计算机可读介质,其中,利用所述一个或多个x-path中的所述第二组x-path来访问所述一个或多个资源页面中的所述第一资源页面包括:
利用所述第二组x-path中的第四x-path来访问数字购物车页面;并且
利用所述第二组x-path中的第五x-path来访问所述第一资源页面。
12.根据权利要求11所述的非暂态计算机可读介质,其中,利用所述一个或多个x-path中的所述第二组x-path来访问所述一个或多个资源页面中的所述第一资源页面还包括:
确定位于所述数字购物车页面上的第二组一个或多个元素是否有效;并且
13.根据权利要求8所述的非暂态计算机可读介质,其中,利用所述第一组x-path来将所述产品添加到与所述一个或多个资源页面相关联的所述数字购物车包括:
确定位于所述产品列表页面上的第三组一个或多个元素是否有效;并且
确定位于所述产品页面上的第四组一个或多个元素是否有效。
14.根据权利要求8所述的非暂态计算机可读介质,其中,利用所述一个或多个x-path中的第二组x-path来访问所述一个或多个资源页面中的所述第一资源页面包括:
利用所述第二组x-path中的第六x-path来试图获得对所述第一资源页面的访问;
响应于确定所述第二组x-path中的第六x-path不能被用来获得对所述第一资源页面的访问,更新x-path数据库以指示所述第六x-path不起作用。
15.一种方法,包括:
标识对应于第一资源的平台,其中,所述第一资源包括一个或多个资源页面;
确定对应于所标识的平台的一个或多个x-path;
利用所述一个或多个x-path中的至少第一x-path来将产品添加到与所述第一资源相关联的数字购物车;
响应于将所述产品添加到与所述第一资源相关联的所述数字购物车,利用所述一个或多个x-path中的至少第二x-path来访问所述一个或多个资源页面中的第一资源页面,其中,所述第一资源页面是结帐页面;并且
确定位于所述第一资源页面内的第一组一个或多个元素是否有效。
16.根据权利要求15所述的方法,还包括:
响应于确定位于所述第一资源页面内的所述第一组一个或多个元素中的第一元素无效,更新元素数据库以指示所述第一元素无效。
17.根据权利要求16所述的方法,还包括:
响应于确定位于所述第一资源页面内的所述第一组一个或多个元素中的第二元素有效,更新所述元素数据库以指示所述第二元素有效。
18.根据权利要求16所述的方法,其中,利用所述一个或多个x-path中的至少第一x-path来将所述产品添加到与所述第一资源相关联的所述数字购物车包括:
利用所述一个或多个x-path中的第三x-path来访问产品列表页面;
利用所述一个或多个x-path中的第四x-path来访问针对产品的产品页面;并且
利用所述一个或多个x-path中的所述第一x-path来将所述产品添加到所述数字购物车。
19.根据权利要求15所述的方法,其中,利用所述一个或多个x-path中的至少第一x-path来将所述产品添加到与所述第一资源相关联的所述数字购物车包括:
确定位于所述产品列表页面上的第二组一个或多个元素是否有效;并且
确定位于所述产品页面上的第三组一个或多个元素是否有效。
20.根据权利要求15所述的方法,其中,利用所述一个或多个x-path中的至少第二x-path来访问所述第一资源页面包括:
利用所述一个或多个x-path中的第五x-path来试图获得对所述第一资源页面的访问;
响应于确定所述一个或多个x-path中的第五x-path不能被用来获得对所述第一资源页面的访问,更新x-path数据库以指示所述第五x-path不起作用。
CN201980043893.9A 2018-06-29 2019-06-28 用于web爬取电子商务资源页面的机制 Pending CN112384940A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/023,616 US11055365B2 (en) 2018-06-29 2018-06-29 Mechanism for web crawling e-commerce resource pages
US16/023,616 2018-06-29
PCT/US2019/040003 WO2020006523A1 (en) 2018-06-29 2019-06-28 Mechanism for web crawling e-commerce resource pages

Publications (1)

Publication Number Publication Date
CN112384940A true CN112384940A (zh) 2021-02-19

Family

ID=68985231

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980043893.9A Pending CN112384940A (zh) 2018-06-29 2019-06-28 用于web爬取电子商务资源页面的机制

Country Status (4)

Country Link
US (2) US11055365B2 (zh)
EP (1) EP3815023A4 (zh)
CN (1) CN112384940A (zh)
WO (1) WO2020006523A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10346520B2 (en) * 2016-04-26 2019-07-09 RiskIQ, Inc. Techniques for monitoring version numbers of web frameworks
US11532023B2 (en) 2021-02-24 2022-12-20 Kumar N Senthil System and method for streamlining a checkout process of e-commerce websites

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002021339A2 (en) * 2000-09-07 2002-03-14 Oracle International Corporation Method and apparatus for xml data storage, query rewrites, visualization, mapping and references
US20020052928A1 (en) * 2000-07-31 2002-05-02 Eliyon Technologies Corporation Computer method and apparatus for collecting people and organization information from Web sites
US20110314092A1 (en) * 2010-06-16 2011-12-22 Lunt Eric M Unified collection and distribution of data
CN102349069A (zh) * 2009-01-16 2012-02-08 谷歌公司 为搜索结果或链接页面可视化站点结构及使能站点导航
US20130262618A1 (en) * 2012-03-27 2013-10-03 Ebay Inc. Representation manipulation language
US20150287046A1 (en) * 2014-04-03 2015-10-08 Marketly Llc Automatic merchant-identification systems and methods
US20160110455A1 (en) * 2013-05-28 2016-04-21 International Business Machines Corporation Identifying client states
CN105683957A (zh) * 2013-10-31 2016-06-15 谷歌公司 样式表推测性预加载
US9697551B1 (en) * 2012-12-07 2017-07-04 Amazon Technologies, Inc. Transparency in hidden transaction details
CN107710262A (zh) * 2015-12-30 2018-02-16 谷歌有限责任公司 利用网页脚本对网站的客户端会话进行分段的系统和方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6145003A (en) 1997-12-17 2000-11-07 Microsoft Corporation Method of web crawling utilizing address mapping
US6418452B1 (en) 1999-11-03 2002-07-09 International Business Machines Corporation Network repository service directory for efficient web crawling
US6883135B1 (en) 2000-01-28 2005-04-19 Microsoft Corporation Proxy server using a statistical model
US8073935B2 (en) * 2002-07-25 2011-12-06 Oracle America, Inc. Pluggable semantic verification and validation of configuration data
US20070174143A1 (en) 2006-01-23 2007-07-26 Shrage Smilowitz XML based internet and browser system and method
US7783624B2 (en) * 2007-12-03 2010-08-24 Yahoo! Inc. E-commerce system using searchable tags
US20120310914A1 (en) 2011-05-31 2012-12-06 NetSol Technologies, Inc. Unified Crawling, Scraping and Indexing of Web-Pages and Catalog Interface
CN102890692A (zh) * 2011-07-22 2013-01-23 阿里巴巴集团控股有限公司 一种网页信息抽取方法及抽取系统
US20150046281A1 (en) * 2013-08-12 2015-02-12 Gurudatta Horantur Shivaswamy Product suggestions for related items
CA2952034A1 (en) 2014-06-12 2015-12-17 Arie SHPANYA Real-time dynamic pricing system
GB2537934A (en) 2015-05-01 2016-11-02 Salesoptimize Ltd Computer-implemented methods of website analysis
US10455034B2 (en) * 2017-06-28 2019-10-22 Facebook, Inc. Analyzing tracking requests generated by client devices interacting with a website

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020052928A1 (en) * 2000-07-31 2002-05-02 Eliyon Technologies Corporation Computer method and apparatus for collecting people and organization information from Web sites
WO2002021339A2 (en) * 2000-09-07 2002-03-14 Oracle International Corporation Method and apparatus for xml data storage, query rewrites, visualization, mapping and references
CN102349069A (zh) * 2009-01-16 2012-02-08 谷歌公司 为搜索结果或链接页面可视化站点结构及使能站点导航
US20110314092A1 (en) * 2010-06-16 2011-12-22 Lunt Eric M Unified collection and distribution of data
US20130262618A1 (en) * 2012-03-27 2013-10-03 Ebay Inc. Representation manipulation language
US9697551B1 (en) * 2012-12-07 2017-07-04 Amazon Technologies, Inc. Transparency in hidden transaction details
US20160110455A1 (en) * 2013-05-28 2016-04-21 International Business Machines Corporation Identifying client states
CN105683957A (zh) * 2013-10-31 2016-06-15 谷歌公司 样式表推测性预加载
US20150287046A1 (en) * 2014-04-03 2015-10-08 Marketly Llc Automatic merchant-identification systems and methods
CN107710262A (zh) * 2015-12-30 2018-02-16 谷歌有限责任公司 利用网页脚本对网站的客户端会话进行分段的系统和方法

Also Published As

Publication number Publication date
EP3815023A4 (en) 2021-08-18
US11971932B2 (en) 2024-04-30
WO2020006523A1 (en) 2020-01-02
US20200004880A1 (en) 2020-01-02
EP3815023A1 (en) 2021-05-05
US20210334318A1 (en) 2021-10-28
US11055365B2 (en) 2021-07-06

Similar Documents

Publication Publication Date Title
US7496847B2 (en) Displaying a computer resource through a preferred browser
EP1869590B1 (en) Method and system for transferring web browser data between web browsers
US11563674B2 (en) Content based routing method and apparatus
US8893043B2 (en) Method and system for predictive browsing
US20040254935A1 (en) Method and apparatus for automatic consolidation of personalized dynamic data
CN106911693B (zh) 用于检测网页内容劫持的方法、装置和终端设备
US9754028B2 (en) Automatic crawling of encoded dynamic URLs
US10901730B2 (en) Identifying equivalent javascript events
CN102930057A (zh) 搜索实现方法和装置
US7912917B2 (en) Persisting forms data in a composite web application environment
CN101146040B (zh) 分析网站流量的方法和装置
US11971932B2 (en) Mechanism for web crawling e-commerce resource pages
US20110197133A1 (en) Methods and apparatuses for identifying and monitoring information in electronic documents over a network
CN112035092A (zh) 一种表单的处理方法、装置、设备和可读介质
US20170220631A1 (en) Capturing Intended Selection of Content Due to Dynamically Shifting Content
CN104915404A (zh) 访问失效网址的方法和装置
CN109086414B (zh) 用于搜索区块链数据的方法、装置及存储介质
CN110110184B (zh) 信息查询方法、系统、计算机系统及存储介质
CN112749351B (zh) 链接地址确定方法、装置、计算机可读存储介质及设备
US10601892B2 (en) Collaborative bookmarks
CN115080154A (zh) 页面显示方法、装置、存储介质及电子设备
US9098228B2 (en) Determining content rendering capabilities for web browser optimization
EP3629159A1 (en) Risk computation for software extensions
CN110874433A (zh) 信息处理方法及其系统、计算机系统及计算机可读介质
US20220391465A1 (en) System and Method to Update a Bookmarked Document Link and Avoid a Broken Link

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination