I have been working on a project to pull specific href links from a site. Everything is working but I also want to be able to pull only specific data from href link. I haven’t been able to figure that part out.
JavaScript
x
27
27
1
from selenium import webdriver
2
from selenium.webdriver.common.by import By
3
from selenium.webdriver.chrome.service import Service
4
5
6
service = Service(executable_path="c:/temp/chromedriver.exe")
7
driver = webdriver.Chrome(service=service)
8
9
#Source site
10
driver.get("site.com")
11
12
#The xpath to the links
13
s = driver.find_element(By.XPATH, "/html/body/div[3]/div[4]/table[1]/tbody/tr[2]/td[4]/a").get_attribute('href')
14
smonth = driver.find_element(By.XPATH, "/html/body/div[3]/div[4]/table[1]/tbody/tr[2]/td[3]")
15
16
b = driver.find_element(By.XPATH, "/html/body/div[3]/div[4]/table[1]/tbody/tr[6]/td[4]/a").get_attribute('href')
17
bmonth = driver.find_element(By.XPATH, "/html/body/div[3]/div[4]/table[1]/tbody/tr[6]/td[3]")
18
19
bb = driver.find_element(By.XPATH, "/html/body/div[3]/div[4]/table[1]/tbody/tr[28]/td[3]/a").get_attribute('href')
20
bbmonth = driver.find_element(By.XPATH, "/html/body/div[3]/div[4]/table[1]/tbody/tr[28]/td[2]")
21
22
#The output of the links
23
print("S:", smonth.text, s, "nB:", bmonth.text, b, "nBB:", bbmonth.text, bb)
24
25
26
driver.close()
27
Here is the output
JavaScript
1
4
1
S: July 2022 https://bdn-ak-ssl.site.com/software/s96_8_80.exe
2
B: July 2022 https://bdn-ak-ssl.site.com/software/b43_6_56.exe
3
BB: July 2022 https://bdn-ak-ssl.site.com/software/bb202_2_100.exe
4
I’m trying to get the output to look like this
JavaScript
1
4
1
S: July 2022 https://bdn-ak-ssl.site.com/software/s96_8_80.exe Version: s96_8_80
2
B: July 2022 https://bdn-ak-ssl.site.com/software/b43_6_56.exe Version: b43_6_56
3
BB: July 2022 https://bdn-ak-ssl.site.com/software/bb202_2_100.exe Version: bb202_2_100
4
Advertisement
Answer
Use regex
JavaScript
1
10
10
1
import re
2
3
output = "BB: July 2022 https://bdn-ak-ssl.site.com/software/bb202_2_100.exe"
4
result = re.search(r'software/(.*?).exe', output)
5
result = result.group(1)
6
7
output += f" Version: {result}"
8
print(output)
9
10
Output
JavaScript
1
2
1
BB: July 2022 https://bdn-ak-ssl.site.com/software/bb202_2_100.exe Version: bb202_2_100
2