Google Sheets & IMPORTXML - Get Rows By Table ID (XPath) - xpath

I'm struggling with an XPath query inside of a Google Sheets IMPORTXML function. I'm trying to get a table from this site. Using only //tr apparently gives me all table rows from the site. Since I want a specific table I need the table id to drill down the results.
The table id (and class) is as follows:
<table class="leaguetable sortable table detailed-table fixed-wide-table" id="page_competition_1_block_competition_tables_7_block_competition_form_table_1_table">
See my current function and query here.
=IMPORTXML("https://us.soccerway.com/national/england/premier-league/20182019/regular-season/r48730/","//table[#id='page_competition_1_block_competition_tables_7_block_competition_form_table_1_table']/tr")
Using this formula in the spreadsheet gives me #N/A and the error message Imported content is empty.
I tested the query using a Chrome extension and it gave me the desired results. But unfortunately, the table does not show up in my spreadsheet.

only these tables you can scrape:
=IMPORTHTML("https://us.soccerway.com/national/england/premier-league/20182019/regular-season/r48730/",
"TABLE", 2)
anything else is out of limits because it's controlled by JavaScript. you can check so if you click on the lock and enter settings and disable JS and reload the page. then you can observe that clicking on Form button does nothing - eg. can't be scraped.

Related

Filter across pages in Google datastudio

I have a multi page report with Page 1 having a Table chart with filter interactions ON. When I click on a row in this Table chart, I need my other pages also to get filtered based on this row selection.
If I make this table chart report-level, then this table chart will be visible in other pages which I do not want. What is the best possible way to solve this problem?
An alternative approach is to use a Filter Control (set to Report-level) instead of a Table; additionally, a default selection could be set.
Google Data Studio Report and a GIF to elaborate:

download data from website using uipath RPA

I have automated the login and getting to the downloading page where i have some pdf's which i want to download. These pdf's are dynamic ,sometimes there are 10 sometimes 100 ,it changes everyday.i want to download those pdf's .
please find the attached image
Here i want to download the pdf by clicking each elements in column 3(hyperlink highlighted in blue colour) ,the number of rows in the table is dynamic.how can i do it using UIPATH.
From the top of my head, without knowing the application you are working in I see a few different approaches you can try:
Approach 1: Extract table as Data Table
Perhaps you can extract the table as a Data Table, enumerate the rows and find the individual link selectors you then can pass to a click activity.
Approach 2: Dynamically manipulating the selector
Use UIExplorer to find the selector of the link in the third column. Typically the attribute idx is the unique identifier. You can construct your own variable idx and in a while loop increment this variable while passing it to a click-activitys selector: "<your normal selector here someAttr="something" idx="+idx.ToString+"/>
This way, when the click fails with selector not found you will be at the last row of the column and you can exist the while loop.
Approach 3: Using Find Children
Another approach is to use the Find children activity on the column or table to get the children, i.e. the rows. You need to know which filter to use, it is basically the selector.
Find children outputs a IEnumerable<UIElement> you can iterate and pass to a click activity
The shared image is a perfect case of scraping a table from Web page which can be done through UiPath's Data Scraping Wizard, refer this tutorial. This will convert your html table into DataTable. This Data Scraping Wizard will take care of dynamin number of rows as well as the pagination (if exist).
Later, you've to iterate the DataTable (ForEach activity) and hit the link to download PDF files.

Grafana Table Panel 'clickable' and use it to drill down to a more detailed view

Is it possible to have a Table Panel in Grafana, and when you click on a row, it shows a graph from another set of time series?
I see there is a feature request for it, but I'm not sure it's available yet
https://github.com/grafana/grafana/issues/5481
Looking for any suggestions on making the rows in a Table Panel
'clickable' and use it to drill down to a more detailed view (another
dashboard using Template variables). Currently displaying a summary of
several servers as rows in a Table Panel and we want to select an
individual row (i.e a server) to drill down to a more detailed
Dashboard.
Any ways to do this?
Thanks
You can achieve this also in 4.x by defining a link for a table column (in the Column Styles section under Visualization). The link can refer to another dashboard and embed current cell's value (or other cell in the same row) as a parameter.
For example the link Url can be:
/d/c9xaXx5Zz/tree-node?var-datasource=$datasource&var-interval_id=${__cell_1}&from=$__from&to=$__to&var-path=root
In Grafana 6 or above you can preserve the time range filter using the $__from and $__to built-in vars.
The available built-in variables to access cell contents are not well documented, but they can be found by hovering over the (i) icon of the Url in the table panel.
More info on built-in vars: https://grafana.com/docs/reference/templating/#global-built-in-variables
The feature request you linked to is a duplicate of this one which links to this Pull Request. The PR was recently merged so it is available now as a nightly build and will be included in the upcoming 5.0.0 release in September/October.
Drill Down Option can be used from General option from Grafana Dashboard.
Copy the link in the Url of the table which you want to show. Change the items in the variable part which is changing according to the need.It will be of format var-name=value
The link URL works well if you are linking to another dashboard, but it does not work well if you are changing a variable on the same dashboard as it does not auto-refresh.
You can add JavaScript into the URL instead of a link.
javascript:$('a.variable-value-link').trigger('click'); $('span:contains(${__cell:raw})').closest('a').trigger('click');
The JavaScript only works for a single dropdown, it would have to be updated if there were multiple dropdowns. I worked on this quickly, so I am sure there is a better way to use JavaScript to change the variable. It basically opens the dropdown, finds the value from the current row and selects it.

Hyperlink in Oracle Reports (.RDF) Content using Oracle Report Builder

I am not sure if this is the correct forum to ask this question,
I am currently creating an oracle report (.RDF) using Oracle Report Builder and my client wants me to place hyperlinks in the content instead of putting URL in the content.
This report is going to be generated as PDF.
My current sentence looks like
Click here (http://international.usp.ac.fj/?page_id=114) to see USP
member countries.
The URL automatically converts to hyperlink in the above sentence.
What my client wants:
Click here to see USP member countries.
I tried to look for an option where I can use HTML <a> tag.
I would like to know if there is a way to include hyperlinks in Oracle Reports.
Thanks
What you could in order to achieve this is, select property inspector of item you would like to have hyperlink and choose Hyperlink.
Also choose Yes for Contains HTML Tags.
Format for passing dynamic values in URL is
http://www.google.com?pid=&DEPTNO where DEPTNO is the value in report.
Update
This is what I did to achieve your expected output, you could modify based on your requirements
Created sql query for the source
select 'Click here' txt from dual
Select Property Inspector for the field
Added link in Hyperlink property and selected Yes in Contains
HTML Tags
To see the output, generate report as PDF or run report in web
browser.
Hope this helps.

Creating a Form in APEX to set Variables in a Query for an Interactive Report

I am a relative APEX noob.
I'm running APEX 4.0 against a 10gR2 database.
I've written a query that takes a few inputs (two date fields, for start and end, and a text field for further filtering) and created a dynamic report out of it that works when I pull the input variables (:START_DATE, :END_DATE, :OFFICE) out of it or replace them with static values.
I want to create a form on a page that submits those values to the dynamic report page for use in the query to filter the results the user sees when he or she hits the report.
I'm not having much luck finding a good step-by-step example of this. I created a blank page with two Date Pickers and a LOV select dropdown, but am unsure how to best translate those values into the dynamic report.
Can somebody point me at the right documentation for this?
The following was developed using Apex 4.1 but apart from some cosmetic changes the principles should be the same.
The data comes from the standard scott.emp schema.
Overview
This is page 1, the user can enter an empno and\or a hiredate.
When submit is pressed the following report on a different page is displayed:
How it works
On page 1 I have created the three items shown. The text items are called them P1_EMPNO, and P1_HIREDATE. The action for the button is "Submit Page"
Still on page 1, create a branch with the following values:
This branch navigates to page 2 (which is yet to be developed) and sets the values of items on page 2 with the values from page 1.
Create a new page, in this example this will be referred to page 2.
On page 2 create a new interactive report using the following query:
select e.*
from emp e
Next create two text items in the same region as the report and call these :P2_EMPNO and :P2_HIREDATE. I have found it useful to show these items during development so you can see that the correct values are being passed through to the page. You can always set them as hidden once you happy with the report.
Finally amend the query used by the interactive report to use the values supplied by page 1
Run the application.
You want to reference your page items in your query, which means you'll have to submit your page before your query will pick up the session state of them. What I do when I provide a small parameter form, is to put a button up there as well (i.e. labeled 'Query'), which does a submit.
In your report you can then reference your items. If for example you have 2 items P1_DATE_START and P1_DATE_END, your query could look like:
SELECT firstname, lastname, job
FROM employees
WHERE employment_start BETWEEN to_date(:P1_DATE_START) AND to_date(:P1_DATE_END);

Resources