【发布时间】:2018-06-23 23:25:16
【问题描述】:
我有一个指向 myanimelist.net 上不同动漫的 url 列表。对于每个动漫,我想获取可以在网站上找到的每个动漫的流派文本,并将其添加到字符串列表中(每个动漫一个元素,如果动漫列出了 5 个流派,则不是 5 个单独的元素)
这是 myanimelist.net 上动画的HTML code。我想基本上获取图像顶部的流派文本并放入列表中,因此在显示的图像中,它在列表中的条目将是 ["Mystery, Police, Psychological, Supernatural, Thriller, Shounen"] 并且对于我列表中的每个 url,另一个包含该动画流派的字符串被附加到列表中。
这是我的代码的主要部分
driver = webdriver.Firefox()
flist = [url1, url2, url3] #List of urls
genres = []
for item in flist:
driver.get(item) #Opens each url
elem = driver.find_element_by_xpath("/html/body/div[1]/div[3]/div[3]/div[2]/table/tbody/tr/td[1]/div/div[16]").text
genres.append(elem)
该代码适用于某些动漫,但不适用于其他动漫。有时,某些动漫的位置会有所不同,而不是获取有关流派的信息,而是获取有关制作动漫的工作室的信息等。
我想要的是在跨度类中指定“流派:”并获取其下方列出的流派,如上图所示。我似乎找不到任何与我正在寻找的东西相似的东西(尽管我可能只是没有正确表达我的问题以及缺乏使用 xpaths 的经验)
【问题讨论】:
标签: python-3.x selenium web-scraping