WO2016129984A1 - Extracción y verificación de datos inteligente y automatizada - Google Patents

Extracción y verificación de datos inteligente y automatizada Download PDF

Info

Publication number
WO2016129984A1
WO2016129984A1 PCT/MX2015/000069 MX2015000069W WO2016129984A1 WO 2016129984 A1 WO2016129984 A1 WO 2016129984A1 MX 2015000069 W MX2015000069 W MX 2015000069W WO 2016129984 A1 WO2016129984 A1 WO 2016129984A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
web
party
script
web page
Prior art date
Application number
PCT/MX2015/000069
Other languages
English (en)
French (fr)
Inventor
Gabriel Díaz GARZA ABRAHAM
Ricardo SUÁREZ LÓPEZ
Original Assignee
Best Collect, S.A. De C.V.
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 Best Collect, S.A. De C.V. filed Critical Best Collect, S.A. De C.V.
Priority to CN201580046949.8A priority Critical patent/CN106796597B/zh
Priority to BR112015015647-9A priority patent/BR112015015647B1/pt
Priority to CA2944601A priority patent/CA2944601C/en
Priority to RU2016139156A priority patent/RU2699400C2/ru
Priority to MX2015007187A priority patent/MX366930B/es
Priority to AU2015381978A priority patent/AU2015381978B2/en
Priority to JP2016561778A priority patent/JP6603866B2/ja
Publication of WO2016129984A1 publication Critical patent/WO2016129984A1/es

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • 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
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • 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
    • G06Q10/00Administration; Management
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Definitions

  • the present invention refers, in general terms, to the extraction of data from eb portals and to the aerification of the data.
  • an invoice provider may require you to load and validate an invoice against a corresponding purchase order.
  • a user could be limited to a short time window during which the invoices can be loaded.
  • an invoice provider could only have a two-hour window to enter all bills of the day. Failure to enter the information may create a delay in the current orders until the next day or cause the non-timely receipt of money. Therefore : there are a number of drawbacks in the matter that can be addressed.
  • the impiementaesons of the present invention comprise systems, methods and apparatus configured to extract data intelligently from a Web portal and then verify the data.
  • the impiernen ⁇ aciooes of the present invention comprise "no or more methods and systems for the execution of scripts specific to Web pages for data collection.
  • Web site specific scripts can provide highly efficient means for collecting large amounts of data from various sources, additional information can provide a dynamic system for filling Web forms, loading information and validating information.
  • the examples of the present invention can significantly reduce man-made errors and provide significant time savings to large amounts of data.
  • the implementations of the present invention may include a server computer system that intelligently loads and verifies data in non-uniform formats against a second set of data.
  • the server can be configured to execute a computerized method for accessing and comparing stored data sets in a non-uniform manner.
  • the method may include the identification, within one or more data structures, of specific data entries of interest, the one or more Data structures could be stored in a first database of locally accessible data.
  • the method can also include access to a Web portal of a particular third party.
  • the Web portal gives a particular third party may comprise information associated with the one or more data structures.
  • the method may comprise the execution of a script that is unique to the Web portal of a particular third party.
  • the particular script can be configured to interact with the particular third party Web portal to imitate the entries from a user input device.
  • the script can automatically adapt the interactions with the portal! Web of a particular third party, to access and analyze data elements from one or more data fields available in a non-uniform manner.
  • the method may comprise comparing a first set of data received from the one or more available data fields in a non-uniform manner with the second set of data.
  • the second set of data can be stored in a second database that is orally accessible.
  • the method can also include the generation of a report based on comparative data.
  • the report may include notifications of discrepancies between the first data set and the second data set.
  • Additional employments of the present invention may include a server computer system for analyzing non-uniformly presented data from a range of unique non-uniform third party portals.
  • the server computer system can comprise a crazy database device! what s contain addresses to one or more web portals of tareeros.
  • the server computer system may also comprise a network communication device that is configured to automatically access one or more third-party Web portals.
  • the server computer system may comprise a script sequencing processor configured to automatically execute a script specific to the Web portal - for each of the one or more third-party Web porties that are accessed through the device network communication
  • Each of the web portal-specific scripts can be configured to interact with each of the one or more third-party Web porties by mimicking entries from a user input device.
  • the specific scripts for the Web portal can be configured to adapt « thematically interactions with each of the one or more third-party Web portals to access and analyze data elements from one or more data fields available in a non-uni » way. fo me.
  • the server computer system may comprise a database processor configured to compare a first set of data received from the one or more available data fields in a non-uniform manner with a second set of data, which is stored in the device. of iocai database.
  • the server computer system may comprise a user output device configured to display a report based on the compared data. The report includes notifications of discrepancies between the first data set and the second data set.
  • Figure 1 illustrates a schematic diagram of a system in accordance with the Implications of the present invention
  • Figure 2 You will need a representation of a Web page in accordance with the imprints of the present invention
  • Figure 3 illustrates another representation of a conformance Web page with the limitations of the present invention
  • Figure 4 illustrates a further re-creation of a Web page in accordance with fas impiemantaelorses of the present invention
  • Figure 5 illustrates a schematic diagram of the base processor of data in accordance with the implementations of the present invention
  • Figure 6 represents a flow chart of a method in accordance with the implementations of the present invention.
  • the present invention extends to systems, methods and devices configured to intelligently extract data from a Web portal and subsequently verify the data.
  • the impiementations of the present invention comprise one or more methods and systems for the execution of scripts specific to Web page for data collection.
  • Web page-specific scripts can provide highly efficient means to collect large amounts of data from various sources, additional layouts can provide a dynamic system to fill out Web formulations, upload information and validate information.
  • the in- crementations of the present invention can significantly reduce the errors caused by man when validating large amounts of data. Therefore, the implementations of the present invention provide systems and methods to optimize the performance of the computer equipment thereby reducing the air introduced by the human being.
  • the specimens of the present invention can access stored data in a non-uniform manner through a range of different platforms. The data collected can then be validated against a second data source.
  • each voice is more important to correctly correlate data through the various platforms available.
  • an organization might have relationships with a range of different companies.
  • Each company could provide its own unique Web portal to manage its relations with external organizations.
  • it may be necessary to access each respective unique Web portal and collect non-uniformly stored data from each unique Web portal.
  • Figure 1 represents a server computer system ⁇ 100 ⁇ in communication with several Web servers (1 10) over a network ⁇ 120).
  • Web servers (110) may comprise one or more different and Individual Web servers (1 10a), (1 10b) that each corresponds to respective third-party Web portals.
  • the Web server (110a) could be associated with a particular service provider, while the Web server (i 10b) could be associated with a particular manufacturer.
  • a user may need to collect data from both servers ⁇ 11 Os), (1 10b); however, the data storage access could be made differently between the two respective Web portals,
  • the impiementations of the present invention comprise a server computer system (00) that can communicate with one or more different Web servers ⁇ 1 10 ⁇ through the network connection (120).
  • the server computer system (100) may comprise several modules and components, as described in the present document, which are configured to access the data through unique Web portals and validate the data against accessible data sets. It will be understood, however, that the modules and components described in the present invention have the sole purpose of clarifying an explanation. In several other impiementaoior ⁇ es, the modules and components could be organized, combined, divided and named in some other way.
  • the server computer system (100) may comprise a network communication device (102) that is in communication with the network (120).
  • the mu communication device (102) may comprise a fiber adapter, an Ethernet adapter, a Wireless adapter, a modem, a router or any other similar network device.
  • the network communication device (102) could be in communication with the command sequencing processor ⁇ 104 ⁇ .
  • the command scheduling processor ⁇ 104 ⁇ can be configured to execute several scripts and another computer program as determined by the user in the server computer system (100).
  • the command sequencing processor (104) may comprise a general purpose processing unit, a special purpose processing unit, a microcontroller, a Field Programming Gate Array (FPGA), a discrete integrated circuit, a virtual processor or some other component of the processing device, the command sequencing processor (104) could also comprise several computer program components, such as a compiler, an encoder, an application assembly program , an assembler or some other similar software component.
  • the command sequencing processor (104) also communicates with a database processing (108) and the script creation module (108).
  • the database processor (108) may comprise the same processor as a command sequencing processor (104), a unit of different processing, a processing unit on a computer that is independent of! computer equipment containing the command sequencing processor ⁇ 104), or some other processing unit.
  • the script creation module (108) can also comprise the same processor as the script sequencer processor (104) or it can comprise a different processing unit or computer equipment component.
  • the server computer system ⁇ 100 ⁇ can also be in communication with a local database device ⁇ 130) and a user computer equipment ⁇ 140).
  • the crazy database device! (130) could comprise data structures stored in a storage device, for example a hard disk, AM memory or other storage device.
  • the user computing equipment ⁇ 140) could comprise the same computing equipment in which the server computer system ⁇ 100 ⁇ is running, an external computing device, a mobile computing device, a tablet computing device, a garlic station, a server or any other attic device.
  • the various modules of the server computer system (100) can access and download the data stored in a non-uniform manner from the various Web servers ⁇ 1 10 ⁇ and validate the information by comparing with data co « response sanies stored in the local database device (t jaO),
  • the server computer system (100) can be automatically adapted to access the stored data of non-uniform way through a range of different Web portals. For example, due to the large number of potential Web servers (1 0) and the corresponding large number of unique Web page and Web page configurations, in the hands of an implementation, the server computer system (100) can understand a unique script for each desired web portal.
  • the script sequencing processor (104) can automatically load an appropriate script corresponding to the We portal where the network communication device (102) is trying to contact. Falling the single script may comprise Instructions for the network communication device ⁇ 102 ⁇ to communicate with the respective Web servers (1 10), By exercise, one or more Web servers (1 0) may require a username and a password for the purpose of accessing the data of interest. Similarly, each portal! Web could comprise a unique structure or require specific navigation instructions in order to access the desired information.
  • scripts can be created for each Web page and individual Web page that govern the server computer system (100) to gather the desired information.
  • the script creation module (108) provides the user with the tools necessary to create a sequence of commands.
  • the script creation module (108) can provide a registration function. With the use of the registration function, a user in the computer equipment of u $ u ⁇ ario ⁇ 140 ⁇ You can access the desired Web portal, browse through the portal! Web and identify specific elements of interest in the Web portal. The elements and specifics of interest could include data stored in a non-uniform way, buttons, actions necessary to access the data and fields necessary to access the data.
  • the scripting module ⁇ 108 ⁇ can provide the script to the command sequencing processor (104),
  • the command sequencing processor ( 104) could then store the script on the local database device (130).
  • the script sequencing processor (104 ⁇ can automatically access the script, execute the script and navigate the Web page - based on the user's previously recorded interactions.
  • multiple and different scripts could be associated with a portal! Web in particular.
  • the script sequencing processor (104) could select a particular script to run with a portal! Wet>, not only based on the specific web portal ai cyai is being accessed, but also based on the data being searched in the web portal.
  • a first client may require an Espeoiai ⁇ script to access data of interest from a portal! web, while yrx second customer may want different or additional information from the Web portal Therefore, the first client and the second client may have different scripts for the same Web portal.
  • the command sanitation processor ⁇ 104 ⁇ could first determine what data the client is accessing and then execute the appropriate script based on the fact that the determination.
  • the database processor (106) can compare them with a second data set ⁇ 132 ⁇ that is received from the database device local ⁇ 130). For example, the two sets of data could include relevant information on inventing it billed versus an inventory sent. Therefore, the database processor 106 can quickly and easily identify discrepancies between the two data sets.
  • Figure 2 represents a Web page (200) for a specific Web portal.
  • the Web portal could be hosted on the Web server ⁇ 1 10a).
  • the Web page (200) comprises a series of buttons ⁇ 210 ⁇ , (212), (214), a username field ⁇ 220 ⁇ , a password field (230), or a Test box from Your Public and Automatic Machine and Human Differentiation ring (CAPTC HA) ⁇ 240), a user field with CAPTCHA (242) and a send button ⁇ 250).
  • the user at the moment of arriving at the Web page (200) for the first time, the user must generate a script to indicate how the Web page should be navigated.
  • the user can activate a function of register within the script creation module (108) and register the movements in real time with the Web page.
  • the user may need to activate the button (210) before entering his username and password. Therefore, in e! registration mode, the script creation module (108) can record the movement of the mouse to move through the screen towards the ⁇ 210 ⁇ button and then register the mouse by clicking on the ⁇ 210 ⁇ button.
  • the script creation module (108) can identify the user who moves the mouse to the username field (220) and the user name entry in the field. Similarly, the script creation module ⁇ 108) can register the mouse that moves to the password field (230) and that enters a user password. In at least one implementation, in the registration mode, the user can designate the username and password as special objects. Once designated as a special object, the script creation module (108) can determine that the script should not be limited to repeating the exact username and password that the user has entered, but that in instead, you must search for a specific username and password for each case. For example, the server computer system ⁇ 100 ⁇ could have multiple users or access the same Web page (200). Each user could have a unique username and password. Therefore, in at least one implementation, the script can be configured to automatically enter the correct username and password based on the data requested
  • the user in the registration mode, can designate the CAPTCHA phrase (240) as a special object!
  • the user can designate what type of special object it is, for example, a username, password, a CAPTCHA phrase, a button or other similar feature based on the page Web.
  • the module creates sequencing commands (108) automatically identifies both special objects and the type of object.
  • a module that recognizes optical characters can scan a Web page to detect any text within images.
  • the optical character recognition module can then identify the text and send it to the script creation module (108).
  • the script creation module (108) can analyze the received text and any other text of the available Web page to automatically identify several special elements within this Web page -
  • the script creation module (108) You can then assign special identified elements to particular data fields within the local database device (130).
  • the optical character recognition module could identify an Image image that includes the word "password”.
  • the image header could be right next to a text field.
  • the module Creating scripts (108) can create a script that associates the adjacent text field with a special password element. Therefore, when the script is executed in the future, the script sequencing processor (104) can automatically fill the text field with the correct password.
  • the scripting module (108) can identify that a particular field comprises a security parameter.
  • a particular field could be configured to receive text, but to display a corresponding circle character instead of the actual text received.
  • the script creation module could undoubtedly identify the password field.
  • the password field and the username field are close to each other. The ability to identify a field that includes a security parameter (as is often the case with password fields), while the other field does not include the security parameter (as is often the case with user name fields) , you can allow the script creation module (108) to distinguish between the password field and the username field.
  • the command sequencing processor (104) can activate the optical character recognition module in the capture of the special oblate (240), identify the phrase and enter the sentence in the field of user with capture (242), In at least one implementation, if the optical character recognition module cannot identify the CAFTCHA phrase with a sufficiently high confidence rate, the command sequencing processor (104) can request - Automatically take another phrase from C ⁇ PTCHA or you can request user intervention. On the contrary, in at least one implementation, the command resetting processor (104) can analyze the underlying code of the CAPTCHA test to identify the correct way to respond,
  • Figure 3 represents a Web page (300) comprising a set of data stored in a non-uniform manner (350).
  • the data set (350) comprises the data entry column (3 0), a first data field column (312), a second data field column (314) and a tarera field column of data ⁇ 318 ⁇ .
  • the Web page (300) comprises a scroll bar 5 (330) within the upward displacement (332), a downward displacement (338) and an indicator of the location of the ruthlessness (334).
  • the various data entries (310), data fields ⁇ 312 ⁇ , (314), (318) and data elements (320) represented in Figure 3 are provided solely for purposes of clarity and explanation. It will be understood that data stored in a non-uniform manner can be provided in a range of different forms and times and remain within the scope of the present invention,
  • the command sequencing processor (104) can collect the data of interest directly from the network communication device (102), without requiring additional interaction with the stored data in a non-uniform manner (350),
  • a user in the registration mode can indicate which ciatos stored in a non-uniform manner ⁇ 350 ⁇ understand objective information.
  • the script creation module (108) can determine if all the target information is currently in the local memory of the network communication device ⁇ 102 ⁇ or if further interaction with ia is necessary Web page in order to access the whole set of information. For example, in at least one implementation, only The data shown on the Web page (300) may be available in the memory. Therefore, while using the registration mode, the user can indicate the presence of the scroll bar (330).
  • the script creation module ⁇ 108 ⁇ can automatically identify the presence of the scroll bar (330),
  • the script creation module ( 108) can automatically analyze a Web page and determine based on its source code if all available data is in the ⁇ memory, if not, the necessary measures for the recovery of the Information.
  • the script creation module (108) can create a sequence of specific commands for the Web page. You can configure the specific script for the Web page to analyze the data that is currently displayed on the Web page (300). and then interact with the Web page (300) to advance the visualization data. For example, this script can generate a user input signal, as if it were generated by a mouse or keyboard, and cause the scroll button to be pressed downwards
  • the script can be configured using a range of different logical functions. For example, you can set the script to indicate a) script processor (104) identifying the presen 'c ⁇ a relative displacement indicator (334) in the scroll bar ⁇ 330 ⁇ . Using this relative location, the script can be configured to indicate the script processor ⁇ 104 ⁇ to determine if it is necessary to flatten up or down in order to access additional data inputs (320), Otherwise, the script can be configured to indicate the script processor (104) to automatically activate the scroll down button (332), then determine if new data entries are available. If there are no new data entries available, the script can be configured in addition to indicate to the script processor (104) to activate the scroll down button ⁇ 338 ⁇ and then analyze any input of recently available data. configure the script to indicate the processor script (104) continue to activate the slow down button (336) and analyze the newly available data entries (320) until no new data entries appear.
  • a single script specific to a Web page can be generated to analyze target data of the Web page ⁇ 300), although the data (380) is of indeterminate duration and visibility.
  • the script processor (104) executing a specific script from a Web page can correctly identify the actions necessary to collect all target data.
  • the server computer system (100) can be used to load data into a Web portal, for example, as described above, a user in the registration mode can interact with a web page of the maner described above. In this case, however, the user can demonstrate the methods to load data on a Web page. Any person with knowledge in the art will understand how the above description can be applied in order to generate automatic scripts that are configured to automatically load data to Web portals of interest.
  • the script can be activated to automatically load data stored on the local database device (130). For example, a particular user could have one or more invoices stored in the local database device.
  • each invoice is associated with a different target website. It can be gen- It was a particular script that automatically identifies that specific eb page to which each invoice is associated. For example, you can configure the script to access a ciatos file that associated each invoice with a respective Web page.
  • the script can be configured to automatically identify the Web page based on the associated information.
  • the command sync processor (104) can execute the appropriate scripts that are associated with each Web page.
  • the command sequencing processor (104) can then load the data in the manner indicated by the respective script.
  • the script can tell the command processor to move a mouse, execute keystrokes and perform other common user interface functions in such a way that it seems that a user is entering the data.
  • Figure 4 illustrates another impiementation of a Web page (400) comprising non-uniformly stored data 450).
  • the non-uniformly stored data (450) comprises the same data inputs (310) and the data fields (312), (314). (318) as shown in Figure 3. Similarity is provided for clarity purposes and practical use may not be the case.
  • the non-uniformly stored data (450) of Figure 4 comprises a structure different from the structure of the data.
  • the Web page ⁇ 400 ⁇ of Figure 4 does not comprise a scroll bar, but instead includes page buttons (410) , (412), (420), (422) Similar to the creation of scripts in Figure 3 “in at least one implementation, using the registration function, the user can indicate that the page buttons ⁇ 410 ⁇ , (412), (420), (422) comprise special objects.
  • the scripting module (108) can automatically determine that special objects ⁇ 410 ⁇ , (412), (420), (422) are used to advance the structure of data ⁇ 450 ⁇ .
  • the registration function a user can demonstrate, with respect to the script creation module (108), that Sos page buttons (410), (412), (420 ), (422) cause non-uniform data stored in the pages to advance.
  • the user after the designation of the page buttons (410), (412), (420), (422) as specific objects, the user must also designate the script creation module (108) ia function of each object.
  • the script creation module (108) could provide default function menus that the user can associate with each special object !.
  • a menu option may be available for the "page forward button”. The user can designate the page pin (420) as a specific object cia ⁇ , and later in a menu designate the page button (420) as a "page forward button”.
  • ei processor sacuenciaelón command (104) can execute a sequence d specific commands Web page and automatically determine whether to interact with the website (400) of Figure 4 with in order to access all target data.
  • the command sequencing processor ⁇ 104 ⁇ can execute the same script specific to the Web page on the Web page (400) of Figure 4, regardless of the information that is present in the set of data stored in a manner not uniform (4 ⁇ 0).
  • ⁇ I set of data stored in a non-uniform way (450) could comprise large amounts of data from the first client
  • the set of data stored in a non-uniform way ⁇ 450 ⁇ could Understand less than a single page of data from a second customer.
  • the implementations of the present invention provide scripts and methods of Web pages to create said Web pages.
  • Web site-specific scripts can be used for any number of different data requests directed to the specific Web page (300), (400). In this way, high levels of efficiency can be achieved and a significant reduction in human-made errors can be achieved.
  • Figure 5 represents a schematic diagram of the database processor ⁇ 108 ⁇ validating data stored in a manner not uniform (350), ⁇ 460 ⁇ received by Web servers ⁇ 110 ⁇ with the data stored to the crazy database device! (130),
  • the non-uniformly stored data (3SQ), (460) received from the Web servers are consistent with the data represented in Figures 3 and 4.
  • the data ⁇ 132 ⁇ received from the device Local database (130), however, is not completely consistent with the stored data in a non-uniform manner (350), (450), Therefore, the database processor (106) can generate a Report of ( SQ0) comprising indications of the discrepancy.
  • the report may comprise a notification indicator (540) that indicates to the user the specific entries that were not validated.
  • a notification indicator (540) that indicates to the user the specific entries that were not validated.
  • both the input (1) and the input (2) were not present in the data stored in a non-uniform way (3S0), (450) received from the Web servers (1 10), Additionally, the associated data elements with the input of data (4) not consistent between the data sets (132), (350). (4S0). in particular, the data stored in a non-uniform manner (350), (450) indicates that the input (4) must be associated with red and omega.
  • the data entry for the set of iocally stored data (132) indicates that the input (4) must be associated with the green and theta.
  • data entry (S) comprises inconsistency between gamma and et omega.
  • S data entry
  • et omega gamma and et omega.
  • the impiementations of the present invention provide methods and systems to efficiently access non-uniformly stored cytates found on Web pages and to reduce human error at the time of collecting and validating the data.
  • the server computer system (100) of Figure 1 can be used to batch process a large number of different data requests.
  • a customer might be interested in validating a series of invoices with several different parties.
  • a user of the server computer system (100) can simply upload a data file containing a list of interest invoices, along with the data associated with the interest invoices with various third-party Web portals. Once the target information is loaded, the user can simply run the server computer system (100),
  • the server computer system (100) can automatically associate the invoices and information of a third party with specific servers ⁇ 1 10 ⁇ and accompanying Web pages.
  • the network communication device (102) can access a Web page of a particular third party that is associated with one of the previously received third parties.
  • the network communication device ⁇ 102 ⁇ can then browse the third-party Web portal.
  • the network communication device (102) can access the following Web portal of a third party associated with the previously entered data. The process can then continue until all Web portals and all interest invoice data have been collected,
  • the database processor ⁇ 106 ⁇ can validate each individual and respective invoice by comparing it with the information provided to the caller. Therefore, in at least one implementation, different scripts specific to Web pages can be dared in series with each other to access a set of different third-party Web pages and collect data from each of them. In addition, in at least one Implementation, the same scripts specific to the Web page can be used by several different clients to search for different databases.
  • the implementations of the present invention provide several unique and novel advantages in the field or technician.
  • the impiementations of the present invention provide technical methods of creating specific scripts for Web pages that can subsequently be used to navigate through a range of unique Web pages and collect data available in a non-uniform way.
  • the implementations of the present invention provide efficiency benefits and reduce the error committed by humans in large-scale data processing methods and systems.
  • Figures 1-5 and the corresponding text illustrate or otherwise describe one or more methods, systems and / or instructions stored in a storage medium for intelligently loading and verifying the available data in non-uniform formats by comparing them against a second set of data.
  • the implementations of the present invention can also be described in terms of methods comprising one or more acts to achieve a particular result.
  • Figure 6 and the corresponding text illustrates flowcharts of a sequence of acts and a method for loading and verifying data stored in non-uniform formats by collating them against a second set of data.
  • the acts of Figure 8 are described below taking as reference the components and modules illustrated in Figures 1-6.
  • Figure 8 illustrates a flow chart for an implementation of a method for intelligently loading and verifying data stored in non-uniform formats.
  • the method may comprise an act ⁇ 600 ⁇ of identifying the data entries of interest.
  • EN act (600) may include identification, in one or more data structures, specific data entries of interest.
  • the one or more data structures may be stored in a first readily accessible database.
  • Figure 1 represents a local database device (130) that may contain Localy stored information. Vocally stored information may include customer names and passwords specific to customers, customer specific interest invoices, third party portals of customer specific interest and any other specific customer specific information.
  • the server computer system ⁇ 100 ⁇ can access the information stored in the local database device (130) and use this information to collect data.
  • Figure 8 also shows that the method may include an act ⁇ 810) of accessing a third-party Web portal.
  • Act ⁇ 810 ⁇ may comprise accessing a third-party Web portal containing information associated with the one or more data structures.
  • Figure 1 describes a network communication device (102). The device gives network communication ⁇ 102 ⁇ can access a series of Web servers ⁇ 1 10 ⁇ and Web portals of interest of identified third parties.
  • Figure 8 shows that e! method can include an act (820) of executing a particular script.
  • the act (620) may comprise the execution of a sequence of particular commands that is unique in the Web portal of a particular third party.
  • Figure 1 represents a script creation module (108) that can be used to create specific scripts for Web pages. Once a particular Wb page is accessed, the command sequencing processor (104) can execute the specific script of a previously created Web page.
  • Figure 6 also shows that the method may include an act (830 to imitate user entries.
  • the act (830) may comprise interacting with the Web portal given by a particular third party by imitating entries from a user input device.
  • the script creation module (108) can record user interactions with the Web page.
  • Registered interactions may include mouse movements, sealing keystrokes and other similar user interactions.
  • the module creates script creation (108) you can encode these interactions in a specific script of a Web page Later, at the time of accessing the specific Web page, the command sequencing processor (104) can execute the script so that previously registered User Interactions are imitated by the command sequencing processor (104).
  • Figure 6 shows that the method may include an act (640) of adaptation of the Interactions with the Web portal.
  • the act (840) may comprise automatically adapting the interactions with the Web portal of a particular third party to access and analyze data elements from one or more available data fields in a non-uniform manner, for example, Figure 3 and Figure 4 represent equivalent data sets available in different non-uniform ways.
  • the command sequencing processor ⁇ 104 ⁇ can automatically adapt the interactions with the Web page (300). (400) when identifying special objects.
  • Figure 3 comprises special objects ⁇ 332 ⁇ , ⁇ 334), ⁇ 338 ⁇ that control a field in the web page (300). At least one imollementation, the command sequencing processor ⁇ 104 ⁇ can automatically adapt to the scroll bar scroll (330) if necessary to access all the data.
  • Figure 6 shows that the method may include an act (650) of comparing data sets.
  • the act (650) may comprise comparing a first set of data received from the one or more available data fields in a non-uniform manner with the second set of data, which is stored in a second, orally accessible database.
  • Figure 5 represents a first set of ducts (300) that are equivalent to the stored data not uniformly in Figures 3 and 4.
  • the database processor (106) can compare the first set of data ⁇ 300 ⁇ checking against locally accessible data set to (1 32).
  • the locally accessible data set ⁇ 1 32 ⁇ is stored in the local database device (130), a different local storage device or is otherwise available locally via a connection of net.
  • Figure 6 shows that the method can include an act (080) of generating a report.
  • Act ⁇ 680 ⁇ may comprise generating a report based on the data compared.
  • the report may comprise notifications of discrepancies between the first data set and the second data set.
  • Figure S represents a report ⁇ 500 ⁇ that validates and compares the information of the first data set ⁇ 300 ⁇ and the data set iocally stored (132), As described above, the generated report ⁇ 500 ⁇ comprises indications of discrepancies between the two sets of cytates.
  • the modalities of the invention may comprise or employ a special purpose computing system or general purpose computing system that includes physical components (Hardware), for example, one or more processors and system memory, as address in more detail below.
  • the modalities within the scope of the present invention also include physical means and other means readable by computer equipment to carry ⁇ store data structures and / or instructions executable by computer equipment.
  • Such means readable by computer equipment may be any available means that can be accessed via a special purpose computer system or a general purpose computer system.
  • the media readable by computer equipment that store data structures and / or instructions executable by computer equipment are computer storage media.
  • Computer storage media are physical storage media that store data structures and / or constructions executable by computer equipment.
  • Physical storage media includes physical components (Hardware), such as Random Access Memory (RAM), Read Only Memory (ROM), Electrically Read Only Memory Programmable and Blot (EEPRO), Solid State Units (SSD), flash memory, phase change memory (PCM), optical disk storage, disk storage magnetic or other devices of magnetic storage, or any other storage device in physical components (Hardware) that can be used to store the program code in the form of structures gives data or instructions executable by computer equipment, which can be done access and which can be implemented by a system of computer equipment special purpose or general purpose ei impiementar fun "olonaildad described the inve Nation
  • the transmission means may include a network and / or data links, which can be used to carry the program code in the form of data structures and / or instructions executable by computer, and those who can access through a computer equipment system will have a special purpose or general purpose, E!
  • a "network" term is defined as one or more data links that allow the transport of electronic data between computer systems and / or modules and / or other electronic devices, when information is transferred or provided via a network or other connection communications (whether wired, wireless or a combination of wired or wireless) to a computer system, and the computer system could conceptualize the connection as transmission media.
  • the above combinations must be included within the scope of means readable by computer equipment.
  • program code in the form of data structures and / or instructions executable by computer equipment can be automatically transferred from the transmission media to the computer storage media ⁇ or vice versa).
  • data structures and / or instructions executable by computer equipment received via a network or data link can be stored temporarily in the Random Access Memory ⁇ RAM t ) in a infernal module ,?, network (for example, a Network Interface Card (NIC, for its acronym in English), and then is finally transferred to the Random Access Memory (RAM) of the computer system and / or to computer storage media less volumes in a computer system.
  • NIC Network Interface Card
  • computer storage media can be included in the components of the computer equipment system that also (or even primarily) use transmission media.
  • the instructions executable by computer equipment comprise, by way of example, instructions and data that, when executed * in one or more processors, cause a general purpose computer equipment system, urs purpose computer equipment system special or a special purpose processing device perform a specific function or group of functions.
  • the instructions executable by computer equipment could be, for example, instructions in binarial format or Intermediate format such as assembly language or even a source code
  • the Invention could be implemented network computing environments with many types of Computer system configurations, among which are personal computers, desktop computers, laptops, message processors, portable devices, multi-processor systems, microprocessor-based electronics or consumer electronics, network personal computers, mini-computers, central computers, mobile phones, Digital Personal Assistants (PDAs), tablets, pagers, routers, switches and the like.
  • the invention could also be implemented in distributed system environments where local and remote computing systems, which are linked (either via wired data links, wireless data links or via a combination of wired data links and over a network, they perform tasks. Therefore, in a distributed system environment, a computer system could include a plurality of in- Constituent forms. In a distributed environment, program modules could be located on local and remote memory storage devices.
  • Cloud computing environments may be distributed, although this is not necessary.
  • cloud computing environments could be distributed interchangeably within an organization and / or have components owned across multiple organizations.
  • the term "cloud computing” is defined as a model to allow access to the network on demand to a shared set of ooniginable IT resources ⁇ for example, networks, servers, storage, applications and services).
  • the definition of "cloud computing” is not limited to any of the other numerous advantages that can be obtained from such a model when properly deployed.
  • a cloud computing model can be composed of several features, for example self-service on demand, broad network access, resource pooling, rapid elasticity, measured service, and so on.
  • a cloud computing model could also come in the form of several service models, for example, Computer Program as a Service (SaaS), Platform as a Service (PaaS) and Infrastructure as a Service (laaS).
  • SaaS Computer Program as a Service
  • PaaS Platform as a Service
  • laaS Infrastructure as a Service
  • the cloud computing model could also dismiss * Use different models of implementation, for example, a private cloud »community cloud, public cloud, hybrid cloud, etc.
  • Some modalities could comprise a system that includes one or more hosts that are each capable of running one or more virtual machines.
  • virtual machines emulate an operating computer system, being compatible with an operating system and perhaps also with one or more other applications.
  • each host includes a hypervisor that emulates virtual resources for virtual machines using physical resources that are intangible from the point of view of virtual machines -
  • the hypervisor also provides adequate isolation between virtual machines. Therefore, from the perspective of any given virtual machine, the hypervisor provides the illusion that the virtual machine is in interface with a physical resource, even though the virtual machine only looks like ⁇ for example, a virtual resource ) of a physical resource.
  • Examples of physical resources include processing capacity, memory, disk space, network bandwidth, media drives, etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Economics (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Facsimiles In General (AREA)

Abstract

Un sistema informático de servidor para analizar datos presentados de manera no uniforme provenientes de una gama de portales Web de terceros no uniformes únicos puede comprender un procesador secuenciación de comandos configurado para ejecutar automáticamente una secuencia de comandos específica para portal Web para cada uno del uno o más portales Wev de terceros a los que se accede vía un dispositivo de comunicación de red. Cada una de las secuencias de comandos específicas para portal Web puede configurarse para imitar las entradas provenientes de un dispositivo de entrada de usuario y adaptarse automáticamente a las interacciones con cada uno del uno o más portales Web de terceros para acceder y analizar elementos de datos provenientes de uno o más campos de datos disponibles de manera no uniforme. Además, el sistema informático de servidor puede comprender un procesador de base de datos configurado para comparar un primer conjunto de datos recibido del uno o más campos de datos disponibles de manera no uniforme con un segundo conjunto de datos, lo cual se almacena en el dispositivo de base de datos local.

Description

EXTRACCIÓN Y VERIFICACIÓN DE DATOS INTELIGENTE Y AUTOMATIZADA
ta presente I vención se refiere, en términos general, a la ex- tracción efe datos ele portales eb y a la aerificación de los datos.
2. Antecedentes y Técnica Pertinente
En un esfuerzo por maxtmizar la productividad y combatir los fraudes , muchos aíses están emprendiendo acciones para hacer obligatoria ia facturación electrónica. En muchos casos, a las empresas se les exige facturación por mandado gubernamental y, en ocasiones a las personas tísicas, para registrar sus facturas a través de una entidad gu ernamental Las facturas registradas pueden portar una firma electrónica o puede ser autenticadas de alguna otra manera.
Además, en algunos casos para exigir por mandato gubernamental el uso de facturación electrónica, únicamente serán iegaimen- te válidas las facturas que sean electrónicamente registradas . Asi pues, las empresas muestran un alto interés po asegurarse de que las facturas sean debidamente registradas. Del mismo modo, las empresas prestan mucha atención para asegurarse de que las facturas registradas sean correctas y estén completas con el fin de evitar problemas con facturas no válidas. Ai momento de procesar pagos y facturas, las empresas con frecuencia están obligadas a realizar complejas tareas propansas a errores con el fin de acceder y verificar las diferentes facturas. Por ejem lo, con eí fin de acceder a las facturas, un comprador quizá requiera acceder al portal Web de su proveedor, Existe ia posibilidad de que cada portal Web de cada proveedor sea único y complejo. Además, cada portal Web pudiera proporcionar la información de facturas en un formato diferente y único. Por lo tanto, eí comprador debe identificar la manera adecuada para navegar por cada sitio web único y verificar Individualmente que se descarguen las facturas y documentos necesarios. Posteriormente, ei comprador debe verificar tas facturas y documentos descargados cotejándolos con sus propios registros.
Asimismo, en al menos algunas imp ementaciones, es necesario cargar las facturas a un portal Web verificar las entradas de facturas. Por ejemplo, un proveedor de facturas quizá requiera cargar y validar una factura cotejándola contra una orden de compra correspondiente. Además, quizá sea necesario que el proveedor de facturas atienda cualquier discrepancia entre ia factura y la orden de compra antes de o,ue s pueda procesar la factura.
Asimismo, en ai menos una aplicación, un usuario pudiera estar limitado a una ventana de tiempo corto durante eí cual se pueden cargar ias facturas. Po ejemplo, un proveedor de facturas pudieran contar con sóío una ventana de dos horas para ingresar todas las fac- turas del dia. No introducir la información puede crear un retraso en los pedidos en curso hasta el dia siguiente o causar la no percepción puntual de dinero. Por consiguiente: existe una serse de inconvenientes en la materia que pueden abordarse.
BREVE RESUWEIN DE LA INVE CIÓN
Las impiementaesones de la presente invención comprenden sistemas, métodos y aparatos configurados para extraer de mañera inteligente datos de un portal Web y luego verificar los datos. En particular, las impierneníaciooes de la presente invención comprenden «no o más métodos y sistemas para la ejecución de secuencias de comandos específicas de páginas Web para la recopilación de datos. Las secuencias de comandos especificas de páginas Web pueden proporcionar medios altamente eficientes para la recolección do grandes cantidades de datos provenientes de diversas fuentes, im- piemenf ciones adicionales pueden proporcionar un sistema dinámico para llenar formularios Web, carga información y validar información. Además, las ímpíemeníactones de ía presente invención pueden reducir significativamente los errores causados por el hombre y proporcionar importantes ahorros de tiempo ai va idar grandes cantidades de datos.
Las implementáciones de la presente invención pueden incluir un sistema informático de servidor que de manera Inteligente carga y verifica ios datos en formatos no uniformes contra un segundo conjunto de datos. En particular, se puede configurar oi servidor para ejecutar un método informatizado para el acceso y la comparación de conjuntos de datos almacenados de manera no uniforme. El método pdede comprender la identificación, dentro de una o más estructuras de datos, de entradas de datos específicos de interés, la una o más estructuras d datos pudieran almacenarse en una primera basa de datos ¡ocalmente accesible. El método además puede comprender el acceso a un portal Web de un tercero en particular. El portal Web da un tercero en particular puede comprender información asociada con la una o más estructuras de datos.
Además, el método puede comprender la ejecución de una secuencia de comandos qua sea única para el portal Web de un tercero en particular. La secuencia de comandos en particular puede configurarse para interacíuar con el portal Web de urs tercero en particular ai imitar las entradas desde un dispositivo de entrada de usuario. Además, ia secuencia de comandos pueda adaptar de manera automática las interacciones con el porta! Web de un tercero en particular, para acceder y analizar elementos de datos desde uno o más campos de datos disponibles ele manera no uniforme.
Además, el método puede comprender la comparación de un primer conjunto de datos recibidos del uno o más campos de datos disponibles de manera no uniforme con el segundo conjunto de datos. El segundo conjunto de datos puede almacenarse en una segunda base de datos ¡ocalmente accesible. El método además puede com- prender ia generación de un informe con base en ios ciatos comparados. Ei informe puede comprender notificaciones de discrepancias entre ei primer conjunto de datos y el segundo conjunto de datos. tmplemenfaciones adicionales de la presenta invención pueden incluir un sistema informático de servidor para analísar datos presen- fados de manera no uniforme provenientes de una gama de portales \ &h de terceros únicos no uniformes. El sistema informático da servidor puede comprender un dispositivo de base de datos loca! qu s contenga direcciones hacia uno o más portales Web de tareeros. El sistema informático de servidor ademá puede comprender un dispositivo de comunicación de red que esté configurado para acceder automáticamente a uno o más portales Web de terceros.
Además, el sistema informático de servidor puede comprender un procesador de secuenoiacldn de comandos configurado para ejecutar automáticamente una secuencia de comandos especifica para portal Web- para cada uno del uno o más portaies Web de terceros a los cuales se nace acceso por medio del dispositivo de comunicación de red. Cada una de las secuencias de comandos específicas para portal Web puede configurarse para interactuar con cada uno del uno o más portaies Web de terceros al imitar las entradas desde un dispositivo de entrada de usuario. Además, las secuencias de comando especificas para portal Web pueden configurarse para adaptar au« temáticamente interacciones con cada uno del uno o más portales Web de terceros para acceder y analizar elementos de datos provenientes de uno o más campos de datos disponibles de manera no uni» fo me.
Además, el sistema informático de servidor puede comprender un procesador de base de datos configurado para comparar un primer conjunto de datos recibidos del uno o más campos de datos disponibles de manera no uniforme con un segundo conjunto de datos, lo cual se almacena en el dispositivo de base de datos iocai. Más aún, el sistema informático de servidor puede comprender un dispositivo de salida de usuario configurado para visualizar un informe con base n los datos comparados. El informe comprende notificaciones de discrepancias entre eí primer conjunto de dalos y el segundo conjunto de datos.
Características adicionales y ventajas de ímpíementaciones ilustrativas de la invención se establecerán en la siguiente descripción, y hasta cierto grado resultarán obvias a partir de ia descripción, o pudieran aprenderse mediante la ejecución de estas Ímpíementaciones ilustrativas. Las características y ventajas de tales imple- mentaciones pueden maieriaMzarsa y obtenerse por medio de los instrumentos y combinaciones particularmente señaladas en las reivindicaciones adjuntas. Éstas y otras características se volverán mucho más evidentes a partir de la siguiente descripción y reivindicaciones adjuntas, o pudieran aprenderse mediante la ejecución de tales im« píemenfaciones ilustrativas como se establece en io sucesivo,
BREVE DE CRIPC ÓN DE LOS DIBUJOS
Para efectos de describir la manera en que se pueden obtener las ventajas y características antes citadas y otras más de la invención, una descripción más particular de la invención brevemente descrita anteriormente se volverá una referencia para las modalidades especificas de la misma, las cuales se ilustran en ios dibujos adjuntos. Entendiendo ue estos dibujos representan sólo modalidades típicas de ta invención y, por lo tanto, no tienen como finalidad ser considerados como ¡imitantes de su alcance, se describirá y explicará ta invención con especificidad y detalle adicional a través del uso de ios dibujos adjuntos en los que:
La Figura 1 ilustra un diagrama esquemático de un sistema de conformidad con las Impíementaciones de ia presente nvención; ta Figura 2 Nusira una representación de una página Web de conformidad con las impiernentaciones de la presente invención;
La Figura 3 ilustra otra representación de una ág na Web de conformidad co ias imptemeníaciones de la presente invención;
la Figura 4 ilustra una repreaantacióíi más d© una página Web de conformidad con fas impiemantaelorses de la presente invención;
La f igura 5 ilustra un diagrama esquemático de procesador de base da datos de conformidad con las implementaciones de la presente invención;
La Figura 6 representa un diagrama de flujo de un método de conformidad con las implementaciones de la presente invención,
DESCRIPCIÓN DETALLADA PE LAS MODALIDADES PREFERIDAS
ta presente invención se extiende a sistemas, métodos y apa» ratos configurados para extraer de manera inteligente datos de un portal Web y, posteriormente, verificar los datos. En particular, las impiementaciones de la presente invención comprenden uno o más métodos y sistemas para la ejecución de secuencias de comandos especificas para página Web para la recopilación de datos. Las secuencias de comandos especificas para página Web pueden proporcionar medios altamente eficientes para recabar grandes cantidades de datos provenientes de diversas fuentes, impienientaciones adicionales pueden proporcionar un sistema dinámico para llenar formularlos Web, cargar Información y validar información. Además, las in piementaciones de !a presente invención pueden reducir significa- ticamente Sos errores causados por el hombre al momento de validar grandes cantidades de datos. Por consiguiente, las implementaeionas de la presente invención proporcionan sistemas y métodos para optimizar el desempeño ele equipo de cómputo reduciendo con ello el aire introducido por el ser humano. En particular, las smpiemerítaeiones de la presente ín- vención pueden acceder a datos almacenados de manera no uniforme a través de una gama de diferentes plataformas. Los datos recabados pueden validarse entonces contra una segunda fuente de datos.
En la medida que más y más actividades sociales, económicas, empresariales, técnicas y otras má actividades se trasladan a un entorno digital, cada voz es más importante podar correlacionar correctamente datos a través de las diversas plataformas disponibles. Por ejemplo, una organización pudiera tener relacionas con una gama da diferentes empresas. Cada empresa pudiera proporcionar su propio portal Web único para gestionar sus relaciones con organi- zaciones externas. En al menos una Irnpiementaeión, quizá ea necesario acceder a cada respectivo portal Web único y recabar datos almacenados de manera no uniforme de cada portal Web único.
Se comprenderá ios desafios técnicos significativos de identificar y recabar correctamente los datos almacenados de manera no uniforme desde varios diversos portales Web únicos. Del mismo modo, se comprenderá el enorme costo y la probabilidad de erro humano al realizar estas tareas de manera manual. Además, se comprenderá que en al menos una implementeción, el uso de sistemas de automatización y métodos y sistemas técnicamente impie nerstados para acceder a los datos almacarsados de manera no uniforme puede proporcionar beneficios y llevar a cabo funciones qtse un usuario humano sería incapaz de replicar. : Por ejemplo, la Figura 1 representa un sistema informático de servidor {100} en comunicación con varios servidores Web (1 10) través de una red {120). los servidores Web (110) pudieran comprender uno o más distintos e Individuales servidores Web (1 10a), (1 10b) que cada uno corresponde a respectivos portales Web de terceros. Por ejemplo, el servidor Web (110a) pudiera estar asociado con un proveedor de servicios en particular, mient as que el servido Web (i 10b) pudiera estar asociado con un fabricante en particular. En cualquier caso, un usuario uizá necesite recabar datos de ambos servidores {11 Os), (1 10b); sin embargo, el acceso almacenamiento de los datos pudieran efectuarse de manera distinta entre los dos respectivos portales Web,
Por consiguiente, las impiementaciones de la presente invención comprenden un sistema informático de servidor ( 00) que puede comunicarse con uno o más distintos servidores Web {1 10} a través de la conexión de red (120). Además, el sistema informático de servidor (100) puede comprender varios módulos y componentes, como se describe en el presento documento, qu estén configurados para acceder a ios datos a través de portales Web únicos y validar los datos contra eonjuntos de datos iocaimente accesibles. Se comprenderá, sin embargo, que los módulos y componentes descritos en la presente invención tienen como única finalidad dar claridad a una explicación. En varias otras impiementaoioríes, ios módulos y componentes pudieran estar organizados, combinados, divididos y nombrados de alguna otra manera.
El sistema informático de servidor (100) puede comprender un dispositivo de comunicación de red (102) que está en comunicación con la red ( 120). En diversas imptemeofaciones, el dispositivo de comunicación de mú ( 102) puede comprender un adaptador de fibra, un adaptador Ethernet, un adaptador Inalámbrico, un módern , un enruta- dor o cualquier otro dispositivo de red similar. El dispositivo ele eo~ municación de red (102) pudiera estar en comunicación con el procesador de secuenciación de comandos {104}.
En en ai menos una implemerstaciQn,. el procesador de sacueri- eiaciórs de comandos {104} puede configurarse para ejecutar varias secuencias de comandos y otro programa informático como sea de- terminado por el usuario en el sistema informático de servidor ( 100). En diversas impiemenfaciones, ei procesador de secuenciación de comandos (104) puede comprender una unidad de procesamiento de propósito general, u a unidad de procesamiento de propósito especial, un microconfrolador, un Arreglo de Compuertas Programadles Campo {FPGA, por sus siglas en inglés), un circuito integrado discreto, un procesador virtual o algún otro componente o d ispositivo de procesamiento, £1 procesador de secuenclaeidn de comandos ( 104) además pudiera comprender varios componentes de programa informático, tai como un compilador, un codificador, un programa de montaje de aplicaciones, un ensamblador o algún otro componente de programa informático similar.
Además, en al menos una impiementación, el procesador de secuenciación de comandos (104) además se comunica con un procesado de base de datos ( 108) y ei módulo de creación de secuencias de comandos (108). En al menos una impiementación, el procesador de base de datos ( 108) puede comprender ei mismo procesador corno un procesador de secuenciación de comandos ( 104), una unidad de procesamiento distinta, una unidad de procesamiento en un equipo d cóm uto que esté independiente de! equipo de cómputo que cont ene eí procesador de secuenciactón de comandos {104), o alguna otra unidad de procesamiento. Del mismo modo, el módulo de creación de secuencias de comandos ( 108) además pyede comprender el mismo procesador que el procesador de secuenciaclón de comandos (104) o puede comprender una unidad de procesamiento distinta o componente de equipo de cómputo.
£n diversas implementaciones, ei sistema informático de servi- dor {100} además puede estar en comunicación con un dispositivo de base de datos local {130) y un equipo de cómputo de usuario {140). Ei dispositivo de base de datos loca! (130) podría comprender estructuras de datos almacenados en un dispositivo de almacenamiento, por ejemplo un disco duro, memoria AM u otro dispositivo de alma» cenamiento. El equipo de cómputo de usuario {140) podría comprender el mismo equipo de cómputo en el que ei sistema informático de servidor { 100} está ejecutando, un dispositivo de cómputo externo, un dispositivo de cómputo móvil, un dispositivo de cómputo en tableta, una estación efe tra ajo, un servidor o cualquier otro dispositivo ln~ form ático.
En al menos una impiema tación, ios diversos módulos dei sistema informático de servidor (100) pueden acceder y descarga ios datos almacenados de manera no uniforme desde ios diversos serví- dóres Web {1 10} y validar ia información cotejándo a con datos co« rréspond sanies almacenados en ei dispositivo de base de datos local (t jaO), En particular, el sistema informático de servidor (100) puede adaptarse automáticamente para acceder a los datos almacenados de manera no uniforme a través da «na gama de diferentes portales Web. Por ejemplo, debido a la gran cantidad de potenciales servidores Web (1 0) a ia gran cantidad correspondiente de configuraciones de página Web y poríai Web únicas, en al manos una imple- mentación, el sistema informático da servidor (100) p ede comprender una secuencia de comandos única para cada portal Web deseado. En particular, el procesador de secuenciacién de comandos (104) puede cargar automáticamente una secuencia de comandos apropiada que corresponda con el portal We qm el dispositivo de comuni- cación de red (102) esté intentando ponerse en contacto. Cáela secuencia de comandos única puede comprender Instrucciones para el dispositivo de comunicación de red {102} para comunicarse con a los respectivos servidores Web (1 10), Por ejernpio, uno o más servidores Web (1 0) podrían requerir un nombre de usuario y una con- iraseña para efectos de acceder a lo datos de Interés. Del mismo modo, cada porta! Web podría comprender una estructura única u requiera instrucciones de navegación especificas con el fin de acceder a ia información deseada.
Por consiguiente, en al menos una impiementación, se pueden crear secuencias de comandos para cada página Web y poríai Web individual que rigen el sistema informático de servidor (100) para recabar la información deseada. En al menos una ímplementaclón, ei módulo de creación de secuencias de comandos (108) proporciona al usuario las herramientas necesarias para crear una secuencia de co- mandos. Por ejemplo, el módulo de creación de secuencias de comandos (108) puede proporcionar una función de registro. Con el uso úé ia función de registro, un usuario en el equipo de cómputo de u$u~ ario {140} uede cceder ai portal Web deseada, navegar por ei porta! Web e identificar element s específicos de interés en el portal Web, Los elementos e pecíficos de interés podrían comprender datos almacenados de manera no uniforme, botones, accionas necesarias para acceder a los datos y campos necesarios para acceder a los datos.
Ursa vez que el usuario ha terminado de crear una secuencia de comandos, el módulo de creación da secuencias de comandos {108} puede proporcionar la secuencia de comandos al procesador de se- euenciación de comandos (104), El procesador de secueociación de comandos (104) podrían entonces almacenar la secuencia de comandos en el dispositivo de base de datos local ( 130). En el futuro, cuando so haga acceso al porta! Web al cual la secuencia de comandos está asociada, el procesador de secuenciación de comandos (104} puede acceder automáticamente a ia secuencia de comandos, ejecutar la secuencia de comandos y navegar por la página Web - con base en las interacciones previamente registradas del usuario.
Además, en a! menos una irnplementación, múltiples y diferentes secuencias de comandos pudieran estar asociadas con un porta! Web en particular. El procesador de secuenciación de comandos ( 104) podría seleccionar una secuencia de comandos en particular para ejecutarse con un porta! Wet>, no sólo con base en el portal Web específico ai cyai se está haciendo acceso, sino además con base en los datos que están siendo buscados en el portal Web. Por ejemplo, un primer cliente quizá requiera una secuencia de comandos espeoiai ρψ acceder a datos de interés desde un porta! de web, mientras que yrx segundo cliente quizá desee información diferente o adicional del portal Web. Por lo tanto, el primer cliente y el segundo clie te pudieran tener diferentes secuencias de comandos para el mismo portal Web. A! momento da cceder ai portal Web» el procesador de sacuen- elación da comandos { 104} podría ers primer lugar determinar cuáles son los datos a los que el cliente está haciendo acceso y posterior- mente ejecutar la secuencia de comandos adecuada con base en que la determinación.
Una ea que ios datos necesarios ( 122) ha sido recibidos da ios servidores Web { 1 10}, ei procesador de base de datos ( 106) puede compararlos con un segundo conjunto de datos { 132} que es recibido del dispositivo de base de datos local { 130). Por ejemplo, los dos conjuntos de datos podrían comprender Información referente en inventarlo facturado versus un inventario enviado. Por lo tanto, el procesador de base de datos ( 106) puede identificar rápida y fácil* mente discrepancias entre los dos conjuntos de datos.
Retomando ahora un ejemplo da un portal Web, la Figura 2 representa una página Web (200) para un portal Web especifico. Ei portal Web pudieran estar alojado en el servidor Web <1 10a). Como se muestra, la página Web (200) comprende una serie de botones {210}, (212), (214), un campo de nombre de usuario {220} , un campo de contraseña (230) , u na casilla de Prueba de Tu ring Pública y Automática para Diferenciar Máquinas y Humanos (CAPTC HA, por sus siglas en inglés) {240), un campo de usuario con CAPTCHA (242) y un botón de envió {250). En ai menos una implementación, ai momento de arri- bar a la págioa Web (200) por primera vez, ai usuario debe generar una secuencia de comandos para indicar cómo se debe navegar la página Web. Por ejemplo, ei usuario puede activa una funció de registro dentro del modulo de creación de secuencias de comandos (108) y registrar ios movimientos en tiempo real con la página Web. En ai menos una impíemenlacíón, el usuario quizá requiera activar ei botón (210) antes de ingresar su nombre de usuario y contraseña. Por lo tanto, en e! modo de registro, ei módulo de creación de secuencias de comandos ( 108) puede registrar el movimiento del ratón ai trasladarse por la pantalla hacia el botón {210} y posteriormente registrar el ratón haciendo ciic en el botón {210}.
Además, ai módulo de creación de secuencias de comandos (108) puede identificar el usuario que mueve el ratón hacia el campo nombre de usuario (220) y la entrada del nombre de usuario en el campo. Del mismo modo, ei módulo de creación de secuencias de comandos {108) puede registrar el ratón que se mueve hacía el campo de contraseña (230) y que ingresa una contraseña de usuario. En ai menos una implementacíón, en el modo de registro, el usuario puede designar el nombre de usuario y la contraseña como objetos especiales. Una vez designado como un objeto especial , ei módulo de creación de secuencias de comandos ( 108) puede determinar que la secuencia de comandos no debe limitarse a repetir ei nombre de usu- ario y la contraseña exactos que el usuario ha ingresado, sino que en su lugar debe buscar un nombre de usuario y contraseña específicos para cada caso. Por ejemplo, el sistema Informático de servidor { 100} pudiera tener múltiples usuarios u accedan a la misma página Web (200). Cada usuario pudiera tener un nombre de usuario y contraseña únicos. Por lo tanto, en al menos una írnpiementación, se puede configurar la secuencia de comandos par ingresar automáticamente el nombre efe usuario y la contraseña correctos con base en los datos que sean solicitados
De manera similar, ai menos une implemantación, en el modo de registro, el usuario puede designar la frase de CAPTCHA (240) como un objeto especia!. Ai momento de designar un elemento corno un objeto especial, el usuario puede designar de ué tipo de objeto especial se trata, Por ejemplo, un nombre de usuario, una contraseña, una frase de CAPTCHA, un botón u otra característica similar basada e la página Web. En contraste, al menos una aplicación, el módulo da creación de secuenoiacion le comandos (108) identifica automáticamente tanto los objetos especiales como el tipo de objeto.
Por ejemplo, en al menos una ímplementacián, un módulo le reconocimiento óptica de caracteres (no mostrado) puede escanear una página Web para detecto cual uier texto dentro de imágenes. El módulo de reconocimiento óptico de caracteres puede identificar entonces el texto y enviarlo al módulo de creación de secuencias de comandos (108). El módulo de creación de secuencias de comandos (108) puede analizar el texto recibido y cualquier otro texto de la página Web disponible para identificar automáticamente varios ele» mentes especiales dentro de ta página Web- El módulo de creación de secuencias de comandos ( 108) puede entonces asignar fes elementos especiales identificados a campos de datos particulares dentro del dispositivo de base de datos local (130).
Por ejemplo, el módulo de reconocimiento óptico de caracteres pudiera Identificar un e oabeEado de Imagen que incluya la palabra "contraseña". El e cabezado de imagen pudiera estar justo al lado de un campo de texto. Con base en esta información, el módulo de creación de secuencias de comandos (108) puede crear una secuencia de comandos que asocie el campo de texto adyacente co un elemento especial de contraseña. Por lo tanto, cuando se ejecuta la secuencia de comandos en el futuro, el procesador de secuenclaeión de comandos (104) puede llenar automáticamente el campo de texto con la contraseña correcta..
Además, en al menos una impfementación, el módulo da creación de secuencias de comandos (108) puede identificar que un campo en particular comprende un parámetro de seguridad. Por ejemplo, un campo en particular podría estar configurado para recibir texto, pero para visualizar un carácter de circulo correspondiente en lugar del texto real recibido. Usando esta información, el módulo de creación de secuencias de comandos podría identificar sin duda alguna el campo de contraseña. En particular, en algunos casos, ei campo de contraseña y el campo nombre de usuario están cerca entre sí. La capacidad de identificar un campo que comprenda un parámetro da seguridad (como es co frecuencia ei caso con campos de contraseña), mientras qye el otro campo no comprende el parámetro de seguridad (como es con frecuencia ei caso con campos de nombre de usuario), puede permitir que ei módulo de creación de secuencias de comandos (108) distinga entre el campo de contraseña y el campo de nombre de usuario.
Figure imgf000019_0001
asociar el campo de usuario con
CAPTCHA (242) con ia frase de CAPTCHA (240). En consecuencia, el procesador de secuenclaeión de comandos (104) puede activar ei módulo de reconocimiento óptico de caracteres en la captura del oblato especial (240), identificar ia frase e ingresar ia frase en el campo de de usuario con captura (242), En al menos una implementación, si el módulo de reconocimiento óptico de caracteres no puede identificar la frase de CAFTCHA con una tasa de confianza lo suficientemente alta, el procesador de secuenciación de comandos (104) puede solíci- S tar automáticamente otra frase de CÁPTCHA o puede solicitar la intervención del usuario. Por el contrario, en al menos una imple- mentación, el procesador de saeuenciación de comandos (104) puede analizar el código subyacente da la prueba CAPTCHA a Identificar la manera correcta de responder,
0 Se deberá comprender que existe una gama de distintos formatos y distintas configuraciones que las páginas Web pueden contener que resulten diferentes de los descritos en ia presente patente. En ai menos una Implementación, sin embargo, debido ai módulo de creación de secuencias de comandos (108), ol sistema informático deS servidor (100) puede automáticamente y error humano hacar acceso a casi cualquier página Web (200), Por lo tanto, se pueden recabar datos de diversos portales Web de manera consistente, rápida y con una menor propensión a errores.
La Figura 3 representa una página Web (300) que comprende0 un conjunto de datos almacenados de manera no uniforme (350). El conjunto de datos (350) comprende la columna de entrada de datos (3 0), una primera columna de campo de datos (312), una segunda columna de campo de datos (314) y una tareera columna de campos de, datos {318}. Además, ia página Web (300) comprende una barra5 de desplazamiento (330) dentro del desplazamiento bacia arriba (332), un desplazamiento hacia abajo (338) y un indicador de la ubicación del despiaKamíento (334). Las diversas entradas de datos (310), campos de datos {312}, (314), (318) y elementos d datos (320) representados en la Figura 3 son proporcionados únicamente para efectos de brindar claridad y explicación. Se comprenderá que ios datos almacenados de manera no uniforma pueden proporcionarse e una gama de diferentes formas y tiempos y siguen estando dentro del alcance de la presente Invenc ón,
En ai menos una implernentacíán, al acceder a los datos almacenados de manera no uniforme (350) de la Figura 3, todo el conjunto de datos {350} pudiera estar disponible en la memoria local, aun cuando no todo no se representa simultáneamente en la página Web. Por ejemplo, aun cuando algunos de los datos tengan que ser desplazados a fin de ser visibles, todo el conjunto de datos pudiera estar disponible en la memoria local dei navegador. En tal caso, el procesador de secuenciación de comandos (104) puede recabar ios datos de interés directamente del dispositivo de comunicación de red (102), sin requerir Interacción adicional con los datos almacenados de manera no uniforme (350),
En contraste, en al menos una im plementación, luego de acceder a los datos almacenados de manera no uniforme {360} de la Figu- ra 3, un usuario en el modo de registro puede indicar qu ios ciatos almacenados de manera no uniforme {350} comprenden información de objetivo. Tras Identificar la información de objetivo, el módulo de creación de secuencia de comandos (108) puede determinar si toda la información de objetivo está actualmente en la memoria local del dispositivo de comunicación de red {102} o si es necesario interactuar aún más con ia págin Web con el fin de acceder a todo el conjunto de información. Por ejemplo, en ai menos una implementación, sólo los dalos que so muestran en la página Web (300) podrían estar disponibles en la memoria, Por lo tanto, mientras se utiliza el modo de registro, el usuario puede indicar la presencia de la barra de desplazamiento (330). Por el contrario, en al menos una imple- mentación, el módulo de creación de secuencias de comandos {108} puede Identificar automáticamente fa presencia de la barra de desplazamiento (330), En implementaciones alternas, el módulo de creación de secuencias de comandos (108) puede analizar automáticamente una página Web y determinar con base en si código fuente si todos los datos disponibles están en la memoria γ, si no es así, las medidas necesarias para la recuperación de la Información.
Una vez que el módulo de creación de secuencias de comandos (108) h identificado que es necesario interactuar con la página Web (300) para hacer acceso a todos ios datos, el módulo de creación de secuencias de comandos (108) puede crear una secuencia de comandos específica para la página Web. Se puede configurar la secuencia de comandos especifica para la página Web para analizar ios datos que se muestran actualmente en ía página Web (300). y posteriormente iníeractuar con la página Web (300) para avanzar en ios datos de visualizaciórs. Por ejemplo, ta secuencia de comandos puede generar una señal de entrada de usuario, como si fuera generada por un ratón o teclado, y hacer que se oprima el botón de desplazamiento hacia aba|o {338) . Como una estructura ® datos {350} que se desplaza, la secuencia de comandos pued seguir para analizar las entradas de datos recientemente visibles de la página Web basta que to¾as las entradas de datos hayan sido analizadas. & i
En al me os una realización, se pueden configurar la secuencia de comandos usando una gama de diferentes funciones lógicas. Por ejemplo, se puede configurar la secuencia de comandos para indicar a) procesador de secuencias de comandos (104) identificar la presen» cía relativa del indicador de desplazamiento (334) en ia barra de desplazamiento {330}. Usando esta ubicación relativa, se puede configurar la secuencia de comandos para indicar ai procesador de secuencias de comandos {104} determinar si es necesario para desplanarse hacia arriba o hacia abajo con ei fin de acceder a éntradas de datos adicionales (320), Por el contrario, se puede configurar la secuencia de comandos para indicar ai procesador de secuencias de comandos (104) activar automáticamente ei botón de desplazamiento bacía arriba (332), posteriormente determinar si están disponibles nuevas entradas de datos. Si no hay nuevas entradas de datos disponibles, se puede configurar ia secuencia de comandos ademá para indicar al procesador de secuencias de comandos ( 104) activar el botón de desplazamiento hacia abajo {338} y posteriormente analizar cualquier entrada da datos recientemente disponible, Se puede configurar la secuencia de comandos para indicar ai procesador secuencia de comandos (104) continuar para activar el botón da despíazam lento hacia abajo (336) y analizar ias entradas de datos recientemente disponibles (320) hasta que no aparezcan nuevas entradas de datos.
En consecuencia, en ai menos una ímplementac-ión, se pueden generar una sola secuencia de comandos especifico para una página Web para analizar datos de objetivo de la página Web {300), aunque los datos (380) son de duración y visibilidad indeterminadas. Por ejemplo, en al meóos una implanientaeión, ncluso cuando la página Web (300) d© la Figura 3 aún es capaz de mostrar dalos des laz - bles, quizá no haya ia cantidad suficiente de datos para una función de des laz miento que se requiera. Por el contrario, en al menos una tmplementacsón, quizá sea necesario un desplazamiento significativo para acceder a todos los datos. En ambos casos, el procesador de secuenciacsón de comandos (104) ejecutando una secuencia de comandos específica de una página Web puede identificar correctamente las acciones necesarias para recabar todos los datos de objetivo.
Asimismo, en al menos una impiemeníación de la presente invención, se puede utilizar el sistema informático de servidor ( 100) para cargar datos en un portal Web, Por ejemplo, como se ha descrito anteriormente, un usuario en el modo de registro puede interactuar con una página Web de la maner que se na descrito anteriormente. En este caso, sin embargo, el usuario puede demostrar los métodos para cargar datos en una página Web. Cualquier persona con conocimientos en la técnica comprenderá la manera en que se puede aplicar la descripción anterior con el fin de generar secuencias de comandos automáticas ue sean configuradas para cargar automáticamente datos a portales Web de interés.
En al menos una impiemeníación, una vez que se ha creado una secuencia de comandos, se puede activar la secuencia de comandos para cargar automáticamente datos almacenados en el dispositivo de base de datos local ( 130). Por ejemplo, un usuario en particular pudiera tener un o más facturas almacenadas en el dispositivo de base de datos local. En al menos una impiementación, cada factura se asocia con un diferente sitio Web objetivo. Se puede gen- era una secuencia de comandos en particular que identifi ue automáticamente esa página eb especifica a la cual cada factura está asociada. Por ejemplo, se puede configurar la secuencia de comandos para acceder a un archivo de ciatos que asoci cada factura con una página Web respectiva. Por el contrario, en al menos «na imple- mentación, se puede configurar la secuencia de comandos para identificar automáticamente la página Web con base en la información asociada.
Una v ¾ que la página Web o páginas Web apropiadas son identificadas, el procesador de seeuenclación de comandos (104) puede ejecutar las secuencias de comandos apropiadas que estén asociadas con cada página Web. El procesador de secueociaciá de comandos (104) puede entonces cargar los datos de la manera indicada por la secuencia de comandos respectiva. En particular, la secuencia de comandos puede indicar al procesador de eecuen- ciaeson de comandos mover un ratón, ejecutar pulsaciones de teclas y realizar otras funcionas de snterfaz de usuario comunes de tal manera que parece que un usuario está introduciendo ios datos.
La Figura 4 ilustra otra impiementación de una página Web (400) que comprende datos almacenados de manera no uniforme 450). En particular, los datos almacenados de manera no uniforme (450) comprenden las mismas entradas de datos (310) y los campos de datos (312), (314). (318) como se muestran en la Figura 3. La similitud se proporciona para efectos de claridad y el uso práctico quizá no sea el caso.
Los datos almacenados de manera no uniforme (450) de ia Figura 4 comprenda una estructura diferente a la estructura de los mismos dalos almacenados en los datos almacenados de manera no uniforme {360} de la Figura 3. Además, la página Web {400} de la Figura 4 no comprenda una barra de desplazamiento, pero en su lugar, comprende botones de página (410), (412), (420), (422) De manera similar a a creación de secuencias de comandos de la Figura 3« en ai menos una implementacíón, utilizando la función de registro, ei usuario puede indicar que los botones de página {410}, (412), (420), (422) comprenden objetos especiales.
Además, en ai menos una impiementación, el módulo de cr acián de secuencias de comandos (108) puede determinar automáticamente que ios objetos especiales {410}, (412), (420), (422) son usados para avanzar en la estructura de datos {450}. Por el contrario, en al menos una implemantación, utilizando ia función de registro, un usuario puede demostrar, con respecto al módulo de creación de secuencias de comandos (108), que Sos botones de página (410), (412), (420), (422) causan que los datos almacenados da manara no uniforme avancen en las páginas.
En al menos una implementacíón, tras la designación de los botones de página (410), (412), (420), (422) como objetos especíales, el usuario debe designar además al módulo de creación de secuencias de comandos (108) ia función de cada objeto. Por ejemplo, el módulo de creación de secuencias de comandos (108) pudiera proporcionar menús de funciones predeterminadas que el usuario puede asociar a cada objeto especia!. Por ejemplo, una opción de menú pu- diera estar disponible para el "botón de avance de ia página". El usuario puede designar el bolón de página (420) como un objeto espe- ciaí, y posteriormente dentro de un menú designar el botón de página (420) como un "botón de avance de ia página".
Por jo tanto, en ai me os una implementación, ei procesador de sacuenciaelón de comandos (104) puede ejecutar una secuencia d comandos específica de página Web y determinar automáticamente si es necesario interactuar con la página Web (400) de ia Figura 4 con el fin dé acceder a todos los datos de objetivo. En particular, ei procesador de secuencíación de comandos {104} puede ejecutar la misma secuencia de comandos específica para página Web en ia página Web (400) de ia Figura 4, independientemente de ia información que esté presente en ei conjunto de datos almacenados de manera no uniforme (4§0). Por ejemplo, en un primer caso ©I conjunto de datos almacenados de manera no uniforme (450) pudieran comprender grandes cantidades de datos del primer cliente, mientras que en un segundo caso, el conjunto de dalos almacenados de manera no uniforme {450} pudiera comprender menos de una sola página de dato de un segundo cliente.
Por consiguiente, las implementaciones de la presente invención proporcionan secuencias de comandos y métodos de páginas Web para crear dichas páginas Web. Las secuencias de comandos específicos para páginas Web pueden usarse para cualquie número de diferentes solicitudes de datos dirigidos a ta página Web (300), (400) especifica. De este modo, se pueden íograr altos niveles de eficiencia Y se puede lograr «na reducción significativa de errores co~ metidos por humanos.
La Figura 5 representa un diagrama esquemático del procesador de base de datos {108} validando datos almacenados de manera no uniforme (350), {460} recibidos efe tos servidores Web {110} con los datos almacenados ai dispositivo de base de datos loca! (130), En esto ejemplo, los datos almacenados de manera no uniforme (3SQ), (460) recibidos de los servidores Web son consistentes con los datos representados en las Figuras 3 y 4. Los datos {132} recibidos desde el dispositivo de base de datos local (130), sin embargo, no es completamente consistente con los datos almacenados da manera no uniforme (350), (450), Por lo tanto, ai procesador da base de datos (106) puede generar un Informe de (SQ0) que comprende indicaciones de la discrepancia.
En al menos un impiementación, el informe puede comprender un indicador de notificación (540) que indica al usuario las entradas especificas que no fueron validadas. Por ejemplo, tanto ia entrada (1 ) como la entrada (2) no estaban presentes en ios datos almacenado da manara no uniforme (3S0), (450) recibidos de ios servidores Web (1 10), Adicionalmente, ios elementos de datos asociados con ia entrada de datos (4) no mn consistentes entre los conjuntos de datos (132), (350). (4S0). en particular, los datos almacenados de manera no uniforme (350), (450) indica que ta entrada (4) debe estar aso- ciado con el rojo y el omega. Por el contrario, la entrada de datos para el conjunto d datos iocalmente almacenados (132) indica que la entrada (4) debe estar asociada con el verde y la theta. Además, la entrada de datos (S) comprende inconsistencia entre la gamma y et omega. En diversas Impiemenfaolones. se puede mostrar esta infor» mación a un usuario an el equipo de cómputo de usuario ( 140), en una copia Impresa o en alguna otra forma. Por !o tanto, las impiementaciones de la presente i » vención proporcionan métodos y sistemas para acceder eficientemente a ciatos almacenados de manera no uniforme encontrados en páginas Web y para reducir el error humano ai momento de recabar y validar los datos. Con base en la descripción anterior, se comprenderá que ia presante invención es altamente adaptable y altamente expan tible. Por ejemplo, en ai menos una impiementación, l sistema informático de servidor (100) de la Figura 1 puede usarse para procesar por lotes un gran número de diferentes solicitudes de datos.
Por ejemplo, en al menos una impiementación, un cliente pudiera estar interesado en validar una serie de facturas con varios y distintos terceros. Un usuario del sistema informático de servidor (100) puede simplemente cargar un archivo de datos que contenga una lisia de las facturas d interés, ¡unto con los datos que se asocian con las facturas de intereses con varios portales Web de terceros. Una vez cargada la información de objetivo, el usuario puede simplemente ejecutar el sistema informático de servidor (100) ,
El sistema informático de servidor ( 100) puede automáticamente asociar las facturas y la información de un tercero con servidores específicos {1 10} y páginas Web que acompañen. Por ejemplo, el dispositivo de comunicación de red (102) puede acceder a una página Web de un tercero en particular ue esté asociada con uno de los terceros anteriormente recibidos. El dispositivo de comunicación de red { 102} puede entonces navegar por el portal Web del tercero.
En particular, el procesador de secuenciación de comandos
(104) puede ejecutar una secuencia de comandos especifica de una página Web asociada con el portal Web de un tercero. La secuencia de comandos específica ele una página Web pueda identificar el nombre de usuario y la contraseña correctos y asociados con el cliente. Ingresar el nombre de usuario y la contraseña y comenzar a recabar datos y navegar por la página Web como se ha descrito antenormen- te. Una vez que tos datos deseados ha sido recabados de la página Web, el dispositivo de comunicación do red (102) puede acceder al siguiente portal Web de un tercero asociados con io datos anteriormente introducidos. El proceso puede posteriormente continuar hasta que todos los portales Web y se hayan recabado todos ios datos de facturas de Interés,
Una vez que se han recabado todos los datos de Interés, el procesador de base de datos {106} puedo validar cada factura individual y respectiva cotejándola con la información proporcionada to~ calmante por el cliente. Por lo tanto, en ai menos una Impl mentación, diferentes secuencias de comandos específicas de páginas Web pueden osarse en serie una con otra para acceder a un conjunto de diferentes páginas Web de terceros y recabar datos de cada uno de ellos. Además, en al menos una Implementacíón, las mismas secuencias de comandos especificas para página Web pueden usarse por varios y distintos clientes para buscar distintas bases de datos.
Por consiguiente, las implementaciones de la presente invención proporcionan varias ventajas únicas y novedosas en el cam o técnico. En particular, las impiementaciones de la presente Invención proporcionan métodos técnicos de creación de secuencias de comandos especificas para páginas Web que posteriormente pueden usarse para navegar por una gama de páginas Web únicas y recabar datos disponibles de manera no uniforme. Además, las implemenfaciones de la presente invención proporcionan beneficios en materia de eficiencia y reducen el error cometido por seres humanos en métodos y sistemas de procesamiento de datos a gran escala.
Por consiguiente, las Figuras 1-5 y el texto correspondiente ilustran o de cualquier otra manera describen uno o más métodos, sistemas y/o instrucciones almacenados en un medio de almacenamiento para cargar y verificar de manera inteligente los datos disponibles en formatos no uniformes cotejándolos contra un segundo conJunto de datos. Se deberá apreciar que las irnplementaciones de la presente invención además pueden describirse en términos de métodos que comprenden uno o más actos para lograr un resultado en particular. Por ejemplo, la Figura 6 y el texto correspondiente ilustra diagramas de flujo de una secuencia de actos y un método para cargar y verificar datos almacenados en formatos no uniformes cotejándolos contra un segundo conjunto de datos. Los actos de la Figura 8 se describen a continuación tomando como referencia ios componentes y módulos ilustrados en ias Figuras 1-6.
Por ejemplo, la Figura 8 ilustra un diagrama de flujo para una implemeníación de un método para cargar y verificar de manera inteligente datos almacenados en formatos no uniformes. El método puede comprender un acto {600} de identificar las entradas de datos de interés. ES acto (600) puede incluir le identificación, en una o más estructuras de datos, entradas de datos específico de interés. La una o más estructuras de datos pueden almacenarse en una primera base de datos locelmente accesible. Por ejemplo, ia Figura 1 representa un dispositivo d base de datos local (130) que puede contener Información locaimente almacenada. La información Vocalmente almacenada puede incluir nombres de usuario y contraseñas específicos de clie tes, facturas de interés especificas de clientes, portales de terceros de interés espec ficos de clientes y cualquier otra infor» ma ión específica del cliente similar. En al menos una imple- mentación, el sistema informático de servidor {100} puede acceder a la información almacenada en ei dispositivo de base de datos local (130) y utilizar esta información para recabar dalos.
La Figura 8 muestra además que ei método puede incluir un acto {810) de acceder a un portal Web de un tercero. Ei acto {810} puede comprender hacer acceso a un portal Web de un tercero que contenga información asociada a ia una o más estructuras de datos. Por ejemplo, ia Figura 1 describe un dispositivo de comunicación de red (102), El dispositivo da comunicación de red {102} puede acceder a una serie de servidores Web {1 10} y a portales Web de interés de terceros identificados.
Además, la Figura 8 muestra que e! método puede incluir un acto (820) de ejecutar una secuencia de comandos en particular. Ei acto (620) puede comprender la ejecución de una secuencia de oo- mandos en particular que sea única en el portal Web de un tercero en particular. Por ejemplo, la Figura 1 representa un módulo de creación de secuencias de comandos (108) que puede usarse para crear secuencias de comandos especificas para páginas Web. Una ve que se accede a una págin W b en particular, el procesador de secuen- ciación de comandos (104) puede ejecutar la secuencia de comandos especifica de una página Web creada anteriormente. La Figura 6 además muestra que el método puede incluir un acto (830 de imitar entradas de usuario. El acto (830) puede comprender interacfuar con el portal Web da un tercero en particular al imitar entradas desde un dispositivo de entrada de usuario. Por ejemplo, el módulo de creación de secuencias de comandos (108) puede registrar las interacciones del usuario con la página Web. Las interacciones registradas pueden incluir movimientos del ratón, pulsaciones de laclado y otras interacciones de usuario similares. El módulo da creación de secuencias de comandos (108) puede codificar estas interacciones en una secuencia de comandos especifica de una página Web. Má tarde, al momento de hacer acceso a la página Web específica, ai procesador de secuencíación de comandos (104) puede ejecutar la secuencia de comandos de manera que las Interacciones de usuario previamente registradas sean imitadas po el procesador de secuencíación de comandos (104).
Además, la Figura 6 muestra que el método puede incluir un acto (640) de adaptación de las Interacciones con el portal Web. £1 acto (840) puede comprender adaptar automáticamente las interacciones con el portal Web de un tercero en particular para acceder y analizar elementos de datos provenientes de uno o más campos de datos disponibles de manera no uniforme, Por ejemplo, la Figura 3 y la Figura 4 representan conjuntos de datos equivalentes disponibles en diferentes maneras no uniformes. En al menos una imple- mentación, el procesador de secuencíación de comandos {104} puede adaptar de manera automática las interacciones con la página Web (300). (400) al identificar objetos especiales. En particular, la Figura 3 comprende objetos especiales {332}, {334), {338} que controlan un campo le despl zamiento dentro de ta página Web (300). En l menos una imólementación, el procesador de secueociaoién de comandos { 104} puede adaptarse automáticamente al desplazamiento de ta barra de desplazamiento (330) sí fuese necesario para acceder a todos los datos.
Además, la Figura 6 muestra que el método puede incluir un acto (650) de comparación dé conjuntos de datos. El acto (650) puede comprender comparar un primer conjunto da datos recibidos dei uno o más campos de datos disponibles de manera no uniforme con el segundo conjunto de datos, el cual está almacenado en una segunda base de datos ¡ocalmente accesible. Por ejemplo, la Figura 5 represente un primer conjunto de tíatos (300) que as equivalente a ios datos almacenados no de manera uniforme tíe las Figuras 3 y 4. El procesador de base de datos (106) puede comparar el primer con - junto de datos {300} cotejándolos contra los datos locaimente accesibles estableció en ( 1 32). En al menos una implementacion, el conjunto de datos locaimente accesibles {1 32} se almacenan en el dispositivo de base de datos local ( 130), un dispositivo de almacenamiento local diferente o de algún otro modo está disponible locaimente a través de una conexión de red.
Más aun, la Figura 6 muestra que el método puede Incluir un acto (080) de generar un informe. El acto {680} puede comprender generar un informe con basa en los datos comparados. El informe puede comprender notificaciones de discrepancias entre el primer conjunto de datos y el segundo conjunto de datos. Por ejemplo, la Figura S representa un informe {500} que valida y compara la información del primeros conjunto de datos {300} y el conjunto de datos íocaímente almacenados (132), Como se ha descrito anteriormente, el informe generado {500} comprende indicaciones de discrepancias entre los dos conjuntos de ciatos.
Aunque so ha descrito el objeto en el lenguaje especifico d las características estructurales y o actos metodológicos, se debe entender que el objeto definido en las reivindicaciones adjuntas no necesa* r iamente se limita a las características descritas o actos descritos anteriormente, así como tampoco al orden de ios actos descritos anteriormente. £ñ su lugar, las características y actos descritos ha sí» do detallados a manera de ejemplo de las maneras de Impiementar las reivindicaciones.
Las modalidades de ia res nte i vención puede comprender o emplear un sistema de cómputo de propósito especial o ur¡ sistema de cómputo de propósito general que incluya componentes físicos (Hardware), por ejemplo, uno o más procesadores y memoria del sistema, como se aborda con mayor detalle a continuación. Las modalidades dentro del alcance de la presente invención además incluyen medios físicos y otros medios legibles por equipo de cómputo para portar ø almacenar estructuras de datos y/o instrucciones ejecutables por equipo de cómputo. Tales medios legibles por equipo de cómputo pueden ser cualquier medio disponible ai que se pueda acceder vía un sistema de cómputo de propósito especial o un sistema de cómputo de propósito general. Los medios legibles por equipo de cómputo que almacenan estructuras de datos y/o instrucciones ejecutables por equipo de cómputo son medios de almacenamiento informático. Los medios legibles por equipo de cómputo que alojan estructuras de datos y/o instrucciones ejecutables por equipo de cómputo so medios de transmisión. Por lo tanto, a manera de ejemplo, y sin carácter limitativo, las modalidades de la invención pueden comprender al manos dos tipos claramente diferentes de medios leg ibles por equipo de cómputo: medios de almacenamiento informático y medios de transmisión.
Los medios de almacenamiento informático son medios de almacenamiento físicos que almacenan estructuras de datos y/o nstrucciones ejecutables por equipo de cómputo. Los medios de almacenamiento físico Incluyen componentes físicos (Hardware), tales como Memoria de Acceso Aleatorio (RAM, por sus siglas en inglés) , Memoria de Sólo Lectura (ROM, por sus siglas en inglés), Memoria de Sólo Lectura Eléctricamente Programabfe y Borrabíe (EEPRO , por sus siglas en inglés), Unidades de Estado Sólido (SSD, por sus siglas en inglés), memoria flash, memoria de cambio de fase (PCM, por sus siglas en inglés) , almacenamiento en disco óptico, almacenamiento en disco magnético u oíros dispositivos da almacenamiento magnético, o cualquier otro dispositivo de almacenamiento en componentes físicos (Hardware) que puede usarse para almacenar el código de programa en la forma de estructuras da datos o instrucciones ejecutables por equipo de cómputo, a los cuales se pueda hacer acceso y los cuales puedan ejecutarse por un sistema de equipo de cómputo de propósito especial o propósito general para impiementar ei fun« olonaildad descrita de la invención.
Los medios de transmisión pueden incluir una red y/o enlaces de datos, io cuales pueden usarse para portar el código de programa en la forma de estructuras de datos y/o instrucciones ejecutables por equ ipo de cómputo, y a ios cuates sa puede hacer acceso a través de un sistema de equipo de cómputo le propósito especial o propósito general, E! término una "red" se define como uno o más enlaces de datos que permiten el transporte de datos electrónicos erstre los sistemas informáticos y/o módulos y/u otros dispositivos electrónicos, Cuando se transfiere o se proporciona información vía una red u otra conexión de comunicaciones (ya sea cableada, inalámbrica o una combinación de cableada o inalámbrica) a un sistema informático, ei sistema informático podría conceptualizar ia conexión como medios de transmisión. Las combinaciones de ios anteriores deben incluirse dentro del alcance de medios legibles por equipo de cómputo.
Además, tras alcanzar diversos componentes de sistema informático, código de programa en la forma de estructuras de datos y/o instrucciones ejecutables por equipo de cómputo puede transferirse automáticamente desde los medios de transmisión hacia ios medios de almacenamiento informático {o viceversa). Por ejemplo, las estructuras de datos y/o instrucciones ejecutables por equipo de cómputo recibidas vía una red o u enlace de datos pueden ser almacenadas de manera temporal en la Memoria de Acceso Aleatorio {RAMt por sus siglas en inglés) en un módulo de infería,?, de red (por ejemplo, una Tarjeta de Interfax para Red (NIC, po sus siglas en inglés) , y posteriormente se transfiere finalmente a la Memoria de Acceso Aleatorio (RAM, por sus siglas en inglés) del sistema informático y/o a medios de almacenamiento informático menos voláfiies en un sistema dé cómputo. Por lo tanto, se debe entenderse que se pueden incluir medios de almacenamiento informático en ios componentes del sistema de equipo de cómputo que además (o incluso principalmente) utilizan medios de transmisión. Las instrucciones ejecutables por equipo de cómputo comprendan, a manera de ejemplo, instrucciones y datos que, cuando se eje* cutan en uno o más procesadores, originan que un sistema de equipo de cómputo de propósito general, urs sistema de equipo de cómputo de propósito especial o un dispositivo ele procesamiento de propósito especial realice una función determinada o un grupo de funciones, Las instrucciones ejecutables por equipo de cómputo pudieran ser, a manera de ejemplo, instrucciones en formato binarlo o en formato Intermedio tales como el lenguaje de ensamble o incluso un código fuente.
Los expertos en la técnica apreciarán que la Invención podría ponerse en práctica entornos informáticos de red con muchos tipos de configuraciones de sistemas Informáticos, entre ios cuales se pueden mencionar, computadoras personales, computadoras de escritorio, computadoras portátiles, procesadores de mensajes, dispositivos portátiles, sistemas multlprocesaóores, electrónica basada en microprocesadores o electrónica ele consumo programabia, computadoras personales de red, minicomputadoras, computadoras centrales, teléfonos móviles, Asistentes Personales Digitales (PDA, por sus siglas en inglés), tabletas, buscapersonas, enrutadores, conmutadores y similares. La invención además se podrían poner en práctica en entornos de sistemas distribuidos donde sistemas de cómputo locales y remo- toa, los cuales estén vinculados (ya sea vía enlaces de datos cableados, enlaces de datos inalámbricos o via una combinación de enlapes de datos cableados e inalámbricos} a través de una red, realizan tareas. Por lo tanto, en un entorno de sistema distribuido, un sistem informático podría incluir una pluralidad de sistemas in- formáticos constituyentes. En un entorno le si tema distribuido, los módulos de programa podrían estar situados en dispositivos de almacenamiento de memoria locales y remotos.
Los expertos en la técnica además apreciarán que la Invención podría ponerse e práctica en un entorno de cómputo en nube. Los entornos de cómputo en nube podrían estar distribuidos, aunque esto no es necesario. Cuando estén distribuidos, los entornos de cómputo en nube podrían estar distribuidos intsrnacíonalrnente de tro de una organización y/o tener componentes poseídos a través de múltiples organizaciones. En esta descripción y en siguiente las reivindicaciones, el término "computación en nube" se define como un modelo para permitir el acceso a la red bajo demanda a un conjunto compartido de recursos Informáticos ooníigurables {por ejemplo , redes, servidores, almacenamiento, aplicaciones y servicios). La definición de "computación en nube" no se limita a ninguna de las otras numerosas ventajas que pueden obtenerse a partir de u n modelo de este tipo cuando se despliega adecuadamente.
Un modelo de computación en nube puede estar compuesto por varias características, por ejemplo autoservicio bajo demanda, acce- so amplio a la red, conjunto de recursos {Resource Pooling) , rápida elasticidad , servicio medido, etcétera. Un modelo de computación en nube también podría provenir en la forma de varios modelos de servicios, por ejemplo, Programa i nformático como Servicio {SaaS , por sus siglas an inglés), Plataforma como Servicio (PaaS, por sus siglas erj inglés) e Infraestructura como Servicio (laaS, por sus siglas &n inglés). El modelo de de computación en nube además podría despíe* garse usando diferentes modelos de impiementación, por ejemplo, una nube privada» nube comunitaria, nube pública, nube híbrida, etc.
Algunas modalidades, por ejemplo un entorno de computación en nube, podría comprender un sistema que incluya uno o más anfitriones que sean cada uno capaz de ejecutar una o más máquinas virtuales. Durante el funcionamiento, las máquinas virtuales emulan un sistema informático operativo, siendo compatible con un sistema operativo y Quizá además con una u otras más aplicaciones. En algunas modalidades, cada anfitrión incluye un hipervisor que emula recursos virtuales para las máquinas virtuales utilizando recursos físicos que son intangible desde el punto de vista de las máquinas virtuales- El hipervisor además proporciona un aislamiento adecuado entre las máquinas virtuales. Por lo tanto, desde la perspectiva de cualquier máquina virtual determinada, el hipervisor proporciona la ilusión de que la máquina virtual se encuentra en interfaz con un recurso físico, aun cuando la máquina virtual sólo in eractóa con el aspecto {por ejemplo, un recurso virtual) de un recurso físico. Ejemplos de recursos físicos incluye la capacidad de procesamiento, memoria, espacio en disco, ancho de banda de red, unidades de medios, etc.
La presente invención podría materializarse en otras formas especificas sin apartarse de su espíritu o características esenciales. Las modalidades descritas deben considerarse en todos los aspectos solamente para efectos ilustrativos y no para efectos restrictivos. El alcance de la invención está, por lo tanto, indicado por las reivindica- ejiones adjuntas más que por la descripción anterior. Todos ios cambios que entren dentro del significado y alcance de equivalencia de las reivindicaciones de e ser ncluidos dentro de su ámbito de aplicación.

Claims

REIVINDICACIONES
1 .» Un método computerizado para hacer acceso y comparar conjuntos de datos almacenados de manera no uniforme En un sistema informático de servidor que inteligente carga y verifica datos en formato no uniformes cotejándolos contra un segu d conjynto de datos, el método comprende:
identificar, dentro de una o más estructuras de datos, entradas de datos específicos de interés, en donde la una o más estructuras de datos están almacenados en una primera base de datos Vocalmente accesible;
acceder a un portal Web de un tercero en particular, en donde el portal Web de un tercero en particular comprende información asociada a la una o más estructuras de datos;
ejecutar una secuencia de comandos en particular que es único en el porta! Web de un tercero en particular, en donde la secuencia de comandos en particular lleva a cabo el método de:
intaractuar cor? el portal Web de un tercero en particular al imitar las entradas desde un dispositivo de entrada de usuario; y
adaptarse automáticamente a las interacciones con el portal Web de un tercero en particular para acceder y analizar elementos de datos provenientes de uno o más campos de datos disponibles de manera no uniforme; comparar un primer conjunto de datos recibidos provenientes del uno o más campos de datos disponibles de manera no uniforme con el segundo conjunto de datos, el cual está ai~ macenado en una segunda base de datos Vocalmente accesible; y
generar un informe con base en los datos comparados, en donde el Informe comprende notificaciones de discrepancias entre el primer conjunto de datos y el segundo conjunto de datos.
2. * El método según la reivindicación 1 , en donde el porta! Web de un tercero en particular se selecciona de entre un conjunto de portales de terceros con base en información asociada con la una o más estructuras de datos.
3. * El método seg n la reivindicación 2, que además comprende:
hacer acceso el segundo conjunto de datos con un primer archivo de datos iocairnenfe almacenados, en donde el segundo conjunto de datos comprende una o más facturas;
identificar una entrad de datos y elementos de datos asociados dentro del primer conjunto de datos;
determinar qu uno o más de los elementos de datos di fieren de los elementos de datos de una entrada de datos correspondiente dentro del segundo conjunto de datos; y generar un informe q e identifica los elementos de datos que difieren.
4. ~ El método según ia reivindicación 1 , que además comprende:
recibir una indicación para comparar los registros para un cliente en particular; hacer acceso datos almacenados en entradas de datos específicos da interés, en donde las entradas de datos específicos de interés comprenden uno o más portales Web de terceres que se asocian con ai cliente en particular;
hacer acceso automático a cada uno del uno o más por- tales Web de terceros; y
ejecutar automáticamente en cada uno del uno o más portales web de terceros una secuencia de comandos que es única para cada portal Web de un tercero respectivo,
5. El método segón la reivindicación i , en donde crear la secuencia de comandos comprende;
activar una función de registro en el sistema, en donde la función de registro captura una o más señales de entrada y señales de salida entre un usuario y el sistema;
capturar y registrar señales de entrada recibidas desde un ratón de usuario y un teclado de usuario, en donde las señales de entrada comprenden una o más direcciones de portales Web de terceros;
capturar y registrar señales de salida recibidas de uno o más portales Web de terceros asociados con la una o más direcciones de portal Web de terceros, en donde las señales de salida comprenden una o más páginas Web que se muestran en respuesta a las señales de entrada;
Identificar una o más señales de salida que estén asociados con las señales de entrada respectivas; e
identificar el uno o má campos de datos disponibles de manera no uniforme.
6. - El método segú la reivindicación S, que además com rende:
recibir, desde un usuario, una i ndicación con respecto a un elemento en particular dentro de una página Web, en donde el elemento está asociado con un campo de datos disponibles de manera no uniforme ; y
asignar el elemento en particular a un campo ie datos en particular en el segundo conjunto de datos.
7. - El método según la reivindicación 6, en donde ejecutar la secuencia de comandos comprende;
generar automáticamente comandos para mover el ratón d usuari de conformidad con las señales de entrada capturadas y registradas; y
después de causar que se emita uno o más comandos, esperar hast que se reciba una serial de salida correspondiente, en donde la señal de salida correspondiente corresponde con una señal de salida previamente capturada y registrada .
8. ~ Ei método según la reivindicación 7 , que además comprende:
identificar el elemento en particular dentro de la página
Web;
analizar uno o más elementos de datos provenientes de un campo de datos posicionalmente asociado con ei elemento en particular en la página Web;
hacer acceso el campo de datos en particular dentro del segundo conjunto d® datos; e identificar discrepancias entre el uno o más elementos de datos analizados y ios elementos de datos provenientes del campo de datos en particular.
El método según la reivindicación 8, en donde el analizar uno o má elementos de datos comprende analizar uno o más elementos de datos que no son visibles en fa página Web, pero están presentes en la memoria local.
10, - E! método según la reivindicación 8, que además comprende;
identificar uno o más elementos provenientes del campo de datos posicionaimente asociado con el elemento en particular en la página Web que no son visibles en la página Web no están presentes en la memoria local;
adaptarse automáticamente a las interacciones con el portal Web de un tareero en particular al identificar un elemento de avance del campo de datos, en donde el elemento de avance del campo de datos comprende un comando para mostrar elementos adicionales dentro del campo efe ciatos;
activar el elemento de avance del campo de datos al imitar una o más entradas de usuario; y
analizar uno o más elementos de datos que antes no eran visibles en la página Web, pero ahora son visibles debido al avance del campo de datos.
1 1 , - Un sistema informático de servidor pare analizar datos presentados de manera no uniforme provenientes de una gama de portales Web de terceros no uniformes y únicos, el sistema que comprende: un dispositivo de base d datos local que comprende una o más estructuras de datos que componen direcciones hacia uno o más portales Web de terceros;
un dispositivo de comunicación de red que cuenta con un navegador Web, en donde el navegador Web está configurado para acceder automáticamente al uno o más portales Web de terceros;
un procesador de secuenciaeíc-n de comandos configurado para ejecutar automáticamente una secuencia de comandos especifica para portales Web para cada uno del uno o más portales Web de terceros que se accede via el dispositivo de comunicación de red, en donde cada una efe las secuencias de comandos especificas para portal Web está configurado para:
interaetuar con cada uno del uno o más portales
Web de terceros ai im tar entradas provenientes de un dispositivo de entrada de usuario; y
adaptarse automáticamente a las interacciones con cada uno del uno o más portales Web de terceros para acceder y analizar elementos de datos provenientes de uno o más campos de datos disponibles de manera no uniforme;
un procesador de base de dalos configurado para comparar un primer conjunto de datos recibidos del uno o más campos de datos disponibles de manera no uniforme con un segundo conjunto de dalos, lo cual se almacena en el dispositivo de base de datos local; y un dispositivo de salida da usuario configurado para mostrar un Informe con base en los datos comparados, en donde el Informe comprenda notificaciones de discrepancias entre el primer conjunto de datos y el segundo conjunto de datos,
12. - El sistema Informático de servidor seg n la reivindicación 1 1 , que además comprende un módulo de creación de secuencias de comandos, en donde el módulo de creación de secuencias de comandos as configurado para;
capturar y registrar señales de entrada recibidas fe un ratán de usuario y un teclado de usuario, en donde ias señales d entrada comprenden una o más direcciones de pórtalas Web de terceros;
capturar y registrar señales de salida recibidas de uno o más portales Web de terceros asociados con una o más direcciones de portal Web de terceros, en donde ias señales de salida comprenden uno o más elementos de páginas Web que se despliegan en respuesta a las señales de entrada;
identificar una o más señales de salida que estén asociadas con las señales de entrada respectivas; e
identificar el uno o más campos de datos disponibles de manera no uniforme.
13. - El sistema informático de servidor según la reivindicación 12, en donde el módulo de creación de secuencias de comandos está configurado además para:
recibir, de un usuario, una indicación con respecto a un elemento en particular dentro de una página Web, en donde el elemento está asociado con un campo d datos disponibles da manera no uniforme; y
designar ei elemento en particular a un campo de datos en particular en el segundo conjunto de datos.
14.- Ei sistema informático de servidor según la reivindicación 0, en donde el procesador de secuenciación de comandos además es configurado para;
generar automáticamente comandos para mover un ratón de conformidad con las señales de entrada capturadas y regís- Iradas; y
después de causar que se emita u o o más comandos, uno o más comandos, esperar hasta que se reciba una señal de salida correspondiente, en donde la se al de salida correspondiente corresponde con una señal de salida previamente captu- rada y registrada,
15.- El sistema informático de servidor según la reivindicación 14, en donde ei procesado de seeueneiacián de comandos es configurado además para:
identificar el elemento en particular dentro de l página Web;
analizar uno o más ©lamentos de datos provenientes de un campo de datos posicionaimanta asociado con el elemento en particular en ia página Web;
hacer acceso ai campo de datos en particular en el se - gundo conjunto de datos; e Identificar discrepancias entre el uno o más elementos de dalos analizados y los elementos de datos provenientes del campo de dalos en particular.
16. - El sistema informático de servidor segur* la reivindicaci n 15. en donde el procesador de secueneiacsán e comandos es configurado además para:
identificar uno o más elementos provenientes del campo de datos posicionaimente asociado con el elemento en particular en la página Web que no son visibles en la página Web y no están presentes en la memoria local;
adaptarse automáticamente a las interacciones con el portal Web de un tercero en particular ai identificar un elemento de avance del campo de datos, en donde el elemento de datos de campo avance comprende un comando para mostrar elementos adicionales dentro del campo de datos;
activar el elemento de avance campo de datos ai imitar una o más entradas de usuario; y
analizar uno o más elementos de datos que antes no eran visibles en la página Web. pero ahora son visibles debido al avance del campo de datos.
17. - El sistema informático de servidor según la reivindicación 1 1 , que además comprende una o más secuencias de comandos especificas para portales Web de codificación manual que son ejecutan por el procesador de secuenciacién de comandos una vez que se acceda a una página Web asociada.
18. - El sistema informático de servido? según la reivindicación 1 1 , que además comprende; un módulo de reconocimiento óptico de caracteres que es configurado para reconocer texto dentro de una o más imágenes en una página Web, en donde el procesador de secuencia- eión da comandos puede incorporar información del texto reconocido en una o más secuencias de comandos,
19. - Ei sistema informático de servidor según ia reivindicación 18, en donde el texto reconocido com rende información referente ai uno o más campos de datos disponibles de manera no uniforme.
20. - Un producto de programa informático para su uso en un sistema informático, el producto de programa informático comprende uno o más medios de almacenamiento informático que tienen almacenados en los mismos instrucciones ejecutables por equipo de cómputo que, cuando se ejecutan en un procesador, hacen que ei sistema de equipo de cómputo realice un método de acceso y comparación de conjuntos de datos alma- cenados de manera no uniforme, el producto de programa informático comprende:
identificar, dentro de una o más estructuras de datos, entradas de datos específicos de interés, en donde la una o más estructuras de datos se almacenan en una primera base de datos loealmente accesible;
hacer acceso a un portal Web d un tercero en particular, en donde el portal Web de un tercero en particular comprende Información asociada con la una o más estructuras de datos; ejecutar una secuencia de comandos en particular que es única en el portal Web de un tercero en particu lar, en donde ia secuencia de comandos en particular lleva a cabo el método ele:
interactuar con el portal Web de un tercero en particular, al imitar las entradas provenientes de un dispositivo de entrada de usuario; y
adaptarse automáticamente a las interacciones con el portal Web de un tercero en particular, para acceder y analizar elementos de datos de u o o más campos de datos disponibles de manera no uniforme;
comparar un primer conjunto de datos recibidos de los un© o más campos de datos disponibles de manera no uniforme con el segundo conjunto de datos, lo cual se almacena dentro d una segunda base de datos o- caimente accesible; y
generar un Informe con base en los datos comparados, en donde el informe comprende notificaciones de discrepancias entre el primer conjunto de datos y el segundo conjunto de datos.
PCT/MX2015/000069 2015-02-11 2015-04-27 Extracción y verificación de datos inteligente y automatizada WO2016129984A1 (es)

Priority Applications (7)

Application Number Priority Date Filing Date Title
CN201580046949.8A CN106796597B (zh) 2015-02-11 2015-04-27 计算机化的方法、服务器计算机系统和存储介质
BR112015015647-9A BR112015015647B1 (pt) 2015-02-11 2015-04-27 Método computadorizado para acessar e comparar conjuntos de dados não uniformemente armazenados em um sistema de computador de servidor, sistema de computador de servidor, e, meio de armazenamento não transitório legível por computador
CA2944601A CA2944601C (en) 2015-02-11 2015-04-27 Automated intelligent data scraping and verification
RU2016139156A RU2699400C2 (ru) 2015-02-11 2015-04-27 Автоматизируемый интеллектуальный сбор и сверка данных
MX2015007187A MX366930B (es) 2015-02-11 2015-04-27 Inteligente y automatizada extracción y verificación de datos de sitios web.
AU2015381978A AU2015381978B2 (en) 2015-02-11 2015-04-27 Automated intelligent data scraping and verification
JP2016561778A JP6603866B2 (ja) 2015-02-11 2015-04-27 自動インテリジェントデータスクレイピング及び検証のための方法、システム、プログラム及び記憶媒体

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/619,751 US10489377B2 (en) 2015-02-11 2015-02-11 Automated intelligent data scraping and verification
US14/619,751 2015-02-11

Publications (1)

Publication Number Publication Date
WO2016129984A1 true WO2016129984A1 (es) 2016-08-18

Family

ID=53396258

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/MX2015/000069 WO2016129984A1 (es) 2015-02-11 2015-04-27 Extracción y verificación de datos inteligente y automatizada

Country Status (11)

Country Link
US (2) US10489377B2 (es)
EP (1) EP3057040A1 (es)
JP (1) JP6603866B2 (es)
CN (1) CN106796597B (es)
AR (1) AR103669A1 (es)
AU (1) AU2015381978B2 (es)
BR (1) BR112015015647B1 (es)
CA (1) CA2944601C (es)
MX (1) MX366930B (es)
RU (1) RU2699400C2 (es)
WO (1) WO2016129984A1 (es)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10489377B2 (en) 2015-02-11 2019-11-26 Best Collect, S.A. De C.V. Automated intelligent data scraping and verification

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10402463B2 (en) * 2015-03-17 2019-09-03 Vm-Robot, Inc. Web browsing robot system and method
EP3398088A4 (en) * 2015-12-28 2019-08-21 Sixgill Ltd. SYSTEM AND METHOD FOR MONITORING, ANALYZING AND MONITORING DARK WEB
US10776838B2 (en) 2016-03-01 2020-09-15 Mx Technologies, Inc. Item level data aggregation
US10984003B2 (en) * 2017-09-16 2021-04-20 Fujitsu Limited Report generation for a digital task
CN108334619A (zh) * 2018-02-07 2018-07-27 政采云有限公司 一种数据采集方法、装置、计算设备及存储介质
KR101982085B1 (ko) * 2018-04-25 2019-05-27 주식회사쿠콘 스크립트 엔진을 이용한 데이터 스크래핑 시스템, 방법 및 컴퓨터 프로그램
US10810020B2 (en) * 2018-10-18 2020-10-20 EMC IP Holding Company LLC Configuring a device using an automated manual process bridge
US10719573B2 (en) 2018-10-31 2020-07-21 Flinks Technology Inc. Systems and methods for retrieving web data
US11245719B2 (en) * 2019-01-11 2022-02-08 Oracle International Corporation Systems and methods for enhanced host classification
KR102475305B1 (ko) * 2019-10-16 2022-12-12 카페24 주식회사 이종 플랫폼 간의 자동 연동 방법, 장치 및 시스템
KR102396110B1 (ko) * 2019-10-16 2022-05-19 카페24 주식회사 이종 쇼핑몰 간의 연동 방법
WO2022220311A1 (ko) * 2021-04-12 2022-10-20 카페24 주식회사 이종 플랫폼 간의 자동 연동 방법, 장치 및 시스템
US20230244502A1 (en) * 2022-02-03 2023-08-03 Capital One Services, Llc Executing automated browsing sessions

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130136253A1 (en) * 2011-11-28 2013-05-30 Hadas Liberman Ben-Ami System and method for tracking web interactions with real time analytics
US20130346302A1 (en) * 2012-06-20 2013-12-26 Visa International Service Association Remote Portal Bill Payment Platform Apparatuses, Methods and Systems
US20150019327A1 (en) * 2010-09-22 2015-01-15 The Nielsen Company (Us), Llc Methods and apparatus to determine impressions using distributed demographic information

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020083068A1 (en) 2000-10-30 2002-06-27 Quass Dallan W. Method and apparatus for filling out electronic forms
US20060200754A1 (en) 2001-10-24 2006-09-07 Infosnap Systems and methods for storing personal information, automatically filling out forms, and sharing information with a data recipient
US7561734B1 (en) 2002-03-02 2009-07-14 Science Applications International Corporation Machine learning of document templates for data extraction
US7343551B1 (en) 2002-11-27 2008-03-11 Adobe Systems Incorporated Autocompleting form fields based on previously entered values
US7761787B2 (en) 2002-12-02 2010-07-20 Siemens Medical Solutions Usa, Inc. Document generation system and user interface for producing a user desired document
JP2005316534A (ja) 2004-04-27 2005-11-10 A Line Kk 電子商取引システム
US7660779B2 (en) 2004-05-12 2010-02-09 Microsoft Corporation Intelligent autofill
JP2006048144A (ja) 2004-07-30 2006-02-16 Tenik Kk 自動巡回装置,クライアント端末および自動巡回方法
US8032823B2 (en) 2005-04-15 2011-10-04 Carnegie Mellon University Intent-based information processing and updates
EP1777629A1 (en) 2005-10-19 2007-04-25 NTT DoCoMo, Inc. Method and apparatus for automatic form filling
US9430455B2 (en) 2005-12-15 2016-08-30 Simpliance, Inc. Methods and systems for intelligent form-filling and electronic document generation
US8775919B2 (en) * 2006-04-25 2014-07-08 Adobe Systems Incorporated Independent actionscript analytics tools and techniques
US9069745B2 (en) 2007-01-16 2015-06-30 Ebay, Inc. Electronic form automation
US7941740B2 (en) * 2007-07-10 2011-05-10 Yahoo! Inc. Automatically fetching web content with user assistance
US8214362B1 (en) 2007-09-07 2012-07-03 Google Inc. Intelligent identification of form field elements
US8713029B2 (en) 2007-11-05 2014-04-29 Verizon Patent And Licensing Inc. Method and apparatus for providing auto-completion of information
CN101889286A (zh) 2007-12-10 2010-11-17 国际商业机器公司 用于在网页中输入数据的方法和系统
US9569231B2 (en) * 2009-02-09 2017-02-14 Kryon Systems Ltd. Device, system, and method for providing interactive guidance with execution of operations
US20100205529A1 (en) * 2009-02-09 2010-08-12 Emma Noya Butin Device, system, and method for creating interactive guidance with execution of operations
WO2010148415A1 (en) * 2009-06-19 2010-12-23 Blekko, Inc. Scalable cluster database
WO2011097593A1 (en) 2010-02-05 2011-08-11 Medversant Technologies, Llc System and method for visually mapping and automatically completing electronic forms
FI20105701A (fi) 2010-06-17 2011-12-18 Itella Oyj Menetelmä ja järjestelmä viestintäverkossa toimittajien kontaktointiin
US20120191508A1 (en) * 2011-01-20 2012-07-26 John Nicholas Gross System & Method For Predicting Outcome Of An Intellectual Property Rights Proceeding/Challenge
JP2013011999A (ja) * 2011-06-28 2013-01-17 Yahoo Japan Corp トピック変化検出装置及び方法
JP5764080B2 (ja) * 2012-03-02 2015-08-12 株式会社栗本鐵工所 Web検索システムおよびWeb検索方法
US10146850B2 (en) 2012-10-30 2018-12-04 FHOOSH, Inc. Systems and methods for collecting, classifying, organizing and populating information on electronic forms
US9836775B2 (en) * 2013-05-24 2017-12-05 Ficstar Software, Inc. System and method for synchronized web scraping
US9741059B1 (en) * 2014-05-23 2017-08-22 Intuit Inc. System and method for managing website scripts
US10489377B2 (en) 2015-02-11 2019-11-26 Best Collect, S.A. De C.V. Automated intelligent data scraping and verification
US10452653B2 (en) * 2015-10-07 2019-10-22 Capital One Services, Llc Automated extraction of data from web pages
US10984003B2 (en) * 2017-09-16 2021-04-20 Fujitsu Limited Report generation for a digital task

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150019327A1 (en) * 2010-09-22 2015-01-15 The Nielsen Company (Us), Llc Methods and apparatus to determine impressions using distributed demographic information
US20130136253A1 (en) * 2011-11-28 2013-05-30 Hadas Liberman Ben-Ami System and method for tracking web interactions with real time analytics
US20130346302A1 (en) * 2012-06-20 2013-12-26 Visa International Service Association Remote Portal Bill Payment Platform Apparatuses, Methods and Systems

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10489377B2 (en) 2015-02-11 2019-11-26 Best Collect, S.A. De C.V. Automated intelligent data scraping and verification
US11188519B2 (en) 2015-02-11 2021-11-30 Best Collect, S.A. De C.V., Mexico Automated intelligent data scraping and verification

Also Published As

Publication number Publication date
CA2944601C (en) 2022-10-18
AU2015381978A1 (en) 2016-11-03
RU2016139156A (ru) 2018-04-25
JP2018513426A (ja) 2018-05-24
AR103669A1 (es) 2017-05-24
CA2944601A1 (en) 2016-08-18
BR112015015647A8 (pt) 2022-08-09
BR112015015647B1 (pt) 2023-01-24
US20200057759A1 (en) 2020-02-20
JP6603866B2 (ja) 2019-11-13
RU2016139156A3 (es) 2018-10-22
US10489377B2 (en) 2019-11-26
MX2015007187A (es) 2017-03-14
RU2699400C2 (ru) 2019-09-05
CN106796597B (zh) 2020-12-22
US11188519B2 (en) 2021-11-30
EP3057040A1 (en) 2016-08-17
MX366930B (es) 2019-07-31
AU2015381978B2 (en) 2021-02-04
BR112015015647A2 (pt) 2017-07-11
CN106796597A (zh) 2017-05-31
US20160232194A1 (en) 2016-08-11

Similar Documents

Publication Publication Date Title
WO2016129984A1 (es) Extracción y verificación de datos inteligente y automatizada
US9602526B2 (en) User login monitoring device and method
CN105765539A (zh) 具有自动生成的虚拟环境的用户支持体验
US10686670B2 (en) Optimizing placement of internet-of-things (IoT) devices to provide full coverage and minimize coverage overlap
CN110399067A (zh) 可视化埋点方法、装置、电子设备、存储介质
CN105917324B (zh) 提供号码url服务的方法
WO2016039782A1 (en) Auditing of mobile applications
CN109102324A (zh) 模型训练方法、基于模型的红包物料铺设预测方法及装置
US20190187958A1 (en) Extracting mobile application workflow from design files
US10642966B2 (en) Passwords defined using sequences of images
US10902072B2 (en) Indirect crowdsourcing by associating data from multiple data sources
US20180341855A1 (en) Location tagging for visual data of places using deep learning
CN110348438A (zh) 一种基于人工神经网络模型的图片字符识别方法、装置和电子设备
US10896144B2 (en) Automated configuring of computer system settings for peripheral device(s)
CN112990896A (zh) 基于区块链的二维码识别方法
CN105530260B (zh) 一种用于网站的安全性标识信息的设置方法和装置
Phally et al. Development of Mobile Application for Supporting Community-Based Tourism
Dumedah et al. A new spatial database framework for pedestrian indoor navigation based on the OpenStreetMap tag information
Solomon Enhancing the administration of national examinations using mobile cloud technologies: a case of Malawi National Examinations Board
CN109799987A (zh) 金融产品数据处理方法、系统、计算机设备及存储介质
Induja et al. Alumni Mentorship Portal Using Cloud Computing
CN107105046A (zh) 远程访问大数据的方法及系统
Li Tour navigation: a cloud based Tourist Navigation System
Svane Reality Mining in the Classroom: Simulating social behavior from machine-sensed environmental data
JP2016192019A (ja) 情報処理システムおよびデータ構造

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: MX/A/2015/007187

Country of ref document: MX

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15882172

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2944601

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: NC2016/0002610

Country of ref document: CO

ENP Entry into the national phase

Ref document number: 2016139156

Country of ref document: RU

Kind code of ref document: A

Ref document number: 2016561778

Country of ref document: JP

Kind code of ref document: A

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112015015647

Country of ref document: BR

ENP Entry into the national phase

Ref document number: 2015381978

Country of ref document: AU

Date of ref document: 20150427

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 112015015647

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20150626

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15882172

Country of ref document: EP

Kind code of ref document: A1