driver = webdriver.Chrome(r'XXXX\chromedriver.exe')
FB_bloomberg_URL="https://www.bloomberg.com/quote/FB:US"
driver.get(FB_bloomberg_URL)
eList = driver.find_elements_by_class_name('link__f5415c25')
hrefList = []
for e in eList:
hrefList.append(e.get_attribute('href'))
for href in hrefList:
print(href)
我有上面的编码来提取使用硒 - 蟒蛇的href链接。我想提取每个人的个人资料“董事会成员”中的内容。我知道如何逐个提取它们,但不知道如何编写循环来执行此操作。
以下是我的代码:
driver2 = webdriver.Chrome(r'XXXX\chromedriver.exe')
driver2.get("https://www.bloomberg.com/profiles/people/15103277-mark-elliot-zuckerberg")
boardmembership_table=driver2.find_elements_by_xpath('//*[@id="root"]/div/section/div[5]')[0]
boardmembership_table.text
任何想法都很感谢!
这是应该有效的方法。
driver = webdriver.Chrome(r'XXXX\chromedriver.exe')
FB_bloomberg_URL="https://www.bloomberg.com/quote/FB:US"
driver.get(FB_bloomberg_URL)
eList = driver.find_elements_by_class_name('link__f5415c25')
hrefList = []
for e in eList:
hrefList.append(e.get_attribute('href'))
for href in hrefList:
print(href)
# iterating through all the board members here #<== changed below
driver.get(href)
# you can add WebDriver wait for the below item to be displayed
# so that the script will wait until page loaded successfully with this element
boardmembership_table=driver.find_elements_by_xpath('//*[@id="root"]/div/section/div[5]')[0]
boardmembership_table.text
基本上,只需将第二块连接到for循环下的第一块:
import sys
from selenium import webdriver
driver = webdriver.Firefox()
FB_bloomberg_URL="https://www.bloomberg.com/quote/FB:US"
driver.get(FB_bloomberg_URL)
eList = driver.find_elements_by_class_name('link__f5415c25')
hrefList = []
for e in eList:
hrefList.append(e.get_attribute('href'))
for href in hrefList:
--print(href)
driver.get(href)
boardmembership_table=driver.find_elements_by_xpath('//*[@id="root"]/div/section/div[5]')[0]
boardmembership_table.text
额外收获:下面是如何使用regex (import re
)从URL中提取人名,并将董事会成员表添加到字典中。
result_dict = {}
regex = r"\/people\/\d+-(.*)$"
for href in hrefList:
driver.get(href)
boardmembership_table=driver.find_elements_by_xpath('//*[@id="root"]/div/section/div[5]')[0]
matches = re.finditer(regex, href, re.MULTILINE)
for matchNum, match in enumerate(matches, start=1):
result_dict[match.group(1)] = boardmembership_table.text
这会让你领先一步。
我有下面的代码,可以使用JSoup抓取网站,但我想同时抓取多个URL。我将URL存储在一个数组中,但无法使其工作。如果我想使用它,如何在多线程中实现这段代码?多线程对这样的应用程序有好处吗?
问题内容: 当我将其粘贴到浏览器中时,以下方法起作用: 但是,当我尝试使用Python读取URL时,没有任何反应: 我需要对URL进行编码,还是没有看到什么? 问题答案: 要回答您的问题: 您需要,而不是 编辑(2018-06-25):自Python 3起,旧版被替换为(有关详细信息,请参阅https://docs.python.org/3/library/urllib.request.html#
我面临的问题很简单。如果我试图从一个网站获取一些数据,有两个同名的类。但是它们都包含一个具有不同信息的表。我所拥有的代码只向我输出第一个类的内容。它看起来像这样: 如何让代码输出两个表的内容或仅输出第二个表的内容?提前感谢您的回答!
我不确定我的方向是否正确,但我试图实现的目标相当复杂,至少对我来说是这样。所以我要找的是找到HTML类标签中的内容,并在我想要的任何地方显示这些内容。让我们以一个网站上的在线产品为例,假设标题上的代码写得如下: 是的,我知道我可以使用如下变量: HTML: 风格:
问题内容: 我想使用Python在这样的网页上抓取“正在寻找这些作者:”框中的内容:http : //academic.research.microsoft.com/Search?query=lander 不幸的是,盒子的内容是由JavaScript动态加载的。通常在这种情况下,我可以阅读Javascript来了解发生了什么,或者可以使用Firebug之类的浏览器扩展来了解动态内容的来源。这次没有
问题内容: 免责声明:我在StackOverflow上看到过许多其他类似的帖子,并尝试以相同的方式进行操作,但是它们似乎在此网站上不起作用。 我正在使用Python-Scrapy从koovs.com获取数据。 但是,我无法获得动态生成的产品尺寸。具体来说,如果有人可以引导我从此链接的下拉菜单中获取“不可用”尺寸标签,我将不胜感激。 我可以静态获取尺寸列表,但这样做只能得到尺寸列表,但不能获得其中的