Python

Web自动化(2):自动获取Plant Cell上最新文章标题

2020-03-29  本文已影响0人  lxmic
期刊名

科研最前沿,关注最新期刊发表的文章,需要获取current issue的文章信息,我想着用自动化的方式,来抓取所有最新文章的标题,知道发表了那些文章。

写在前面

大致的流程如下:


1. 分析网页并选取元素

web自动化最关键的部分就是如何查找到你需要的元素,只要我们可以找到元素,那么我们就可以去进行执行相关操作,实验web自动化。

2. 代码实现

# 导入我们需要的模块
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
# 创建驱动对象,指明使用Chrome浏览器驱动
# 因为已经是全局变量,就不用在里面写路径
wd = webdriver.Chrome()
wd.implicitly_wait(10)
# 调用webdriver对象的get方法,请求打开指定浏览器
wd.get('http://www.plantcell.org/')
# 移动鼠标到Content悬停
ac = ActionChains(wd)
ac.move_to_element(
    wd.find_element_by_css_selector('[class="sf-with-ul"]')
).perform()
# 找到current issue元素,找到href链接,然后点击鼠标。
link = wd.find_element_by_css_selector('li[class*="odd"] > a[href*="current"]')
link.click()
#找到所有的标题内容
elements = wd.find_elements_by_css_selector('span.highwire-cite-title')
# 打印我们需要的标题内容,前面两个和倒数第一个不是,我们选取我们需要的打印。
for element in elements[2:-1]:
    print(element.text)
    print()

# 关闭浏览器
wd.quit()

3. 获取内容比对

比对之后发现,没有错误,可以正确执行。以后直接运行这个代码,就可以获得最新期刊内容。


自动化获取内容
网页呈现内容
上一篇下一篇

猜你喜欢

热点阅读