【问题标题】:Trying to get url in empty list in selenium and beautifulsoup试图在 selenium 和 beautifulsoup 的空列表中获取 url
【发布时间】:2021-02-14 21:59:45
【问题描述】:
import time from bs4 
import BeautifulSoup from bs4.element 
import Tag
import pip._internal.distributions from selenium 
import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support 
import expected_conditions as EC from selenium.webdriver.support.ui import 
WebDriverWait n = ['2020','2019','2018'] 
base = 'https://www.bseindia.com' browser =
webdriver.Chrome('/home/anuj/PycharmProjects/firstfrog/chromedriver')
wait = WebDriverWait(browser, 10)
browser.get('https://www.bseindia.com/stock-share-price/financials/annualreports/500104/')
alert_name = browser.find_elements_by_xpath('//*[@class="ng-scope"]/td')
print(alert_name) 
for value in alert_name:       
       if value.text in n:             
           url_d = browser.find_elements_by_xpath('//*[@class="ng-scope"]/td/td/a')
           print(url_d)
           print(value.text)## Heading ##

【问题讨论】:

标签: selenium beautifulsoup


【解决方案1】:

试试这个:

from selenium import webdriver
import time
import pandas as pd

url = 'https://www.bseindia.com/stock-share-price/financials/annualreports/500104/'

driver = webdriver.Chrome()
driver.get(url)
time.sleep(2)

url_lst = []

td_tags = driver.find_elements_by_class_name('tdcolumn')

for td in td_tags:
    try:
        url_lst.append(td.find_element_by_xpath('.//a').get_attribute('href'))
    except:
        pass

df = pd.read_html(driver.page_source)[-1]
df['Download'] = url_lst

driver.close()

print(df)

输出:

    Year                                           Download
0   2020  https://www.bseindia.com/bseplus/AnnualReport/...
1   2019  https://www.bseindia.com/bseplus/AnnualReport/...
2   2018  https://www.bseindia.com/bseplus/AnnualReport/...
3   2017  https://www.bseindia.com/bseplus/AnnualReport/...
4   2016  https://www.bseindia.com/bseplus/AnnualReport/...
5   2015  https://www.bseindia.com/bseplus/AnnualReport/...
6   2014  https://www.bseindia.com/bseplus/AnnualReport/...
7   2013  https://www.bseindia.com/bseplus/AnnualReport/...
8   2012  https://www.bseindia.com/bseplus/AnnualReport/...
9   2011  https://www.bseindia.com/bseplus/AnnualReport/...
10  2010  https://www.bseindia.com/bseplus/AnnualReport/...

【讨论】:

  • 我们可以将这些多个 url 合并到一个 url 中
  • 在单个网址中?你是什​​么意思?你想要它作为一个列表还是什么?
  • 我可以同时打印年份和 URL(年份 URL 年份 URL 按此顺序)
  • 是的,你可以做到。我应该帮助你吗?
  • 是的,需要你的帮助
猜你喜欢
  • 2021-10-27
  • 1970-01-01
  • 2021-12-16
  • 1970-01-01
  • 2019-10-25
  • 2023-02-07
  • 2020-09-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多