python网络爬虫从入门到实践 第4章(二)

python网络爬虫从入门到实践 第4章(二)

pip install selenium


from selenium import webdriver
driver = webdriver.Firefox()
driver.get("http://www.santostang.com/2018/07/04/hello-world/")

可以使用啊
下面这个能用不

from selenium import webdriver

driver = webdriver.Firefox(executable_path = r'C:\ProgramData\Anaconda3\Scripts\geckodriver.exe')
#把上述地址改成你电脑中geckodriver.exe程序的地址
driver.get("http://www.santostang.com/2018/07/04/hello-world/")

可以使用

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

from selenium import webdriver

driver = webdriver.Firefox(executable_path = r'C:\ProgramData\Anaconda3\Scripts\geckodriver.exe')
#把上述地址改成你电脑中geckodriver.exe程序的地址
driver.get("http://www.santostang.com/2018/07/04/hello-world/")


driver.switch_to.frame(driver.find_element_by_css_selector("iframe[title='livere']"))
comment = driver.find_element_by_css_selector('div.reply-content')
content = comment.find_element_by_tag_name('p')
print (content.text)

输出:

有点难哦
全部评论:
from selenium import webdriver
import time

driver = webdriver.Firefox(executable_path = r'C:\ProgramData\Anaconda3\Scripts\geckodriver.exe')

driver.implicitly_wait(20) # 隐性等待,最长等20秒
#把上述地址改成你电脑中geckodriver.exe程序的地址



#把上述地址改成你电脑中geckodriver.exe程序的地址
driver.get("http://www.santostang.com/2018/07/04/hello-world/")
time.sleep(5)

print ('A\n')

for i in range(0, 6):
    # 下滑到页面底部
    driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
    # 转换iframe,再找到查看更多,点击
    driver.switch_to.frame(driver.find_element_by_css_selector("iframe[title='livere']"))
    load_more = driver.find_element_by_css_selector('button.more-btn')
    load_more.click()
    # 把iframe又转回去
    driver.switch_to.default_content()
    time.sleep(2)

    print(i, ' B\n')

print('C\n')
driver.switch_to.frame(driver.find_element_by_css_selector("iframe[title='livere']"))
print('D\n')
comments = driver.find_elements_by_css_selector('div.reply-content')
print('E\n')
for eachcomment in comments:
    content = eachcomment.find_element_by_tag_name('p')
    print (content.text)

仔细观察 页面 ,可以看到那个 页面 自己动。

log :

A

0  B

1  B

2  B

3  B

4  B

5  B

C

D

E

在这里插入图片描述
在这里插入图片描述

find_elements_by_css_selector

应该是 把 所有的 评论 都 找到 并且 放在一块了。

加快 加载 速度
from selenium import webdriver



fp = webdriver.FirefoxProfile()
# 控制 css
fp.set_preference("permissions.default.stylesheet",2)
# 限制图片的加载
fp.set_preference("permissions.default.image",2)
# 限制 JavaScript 的执行
fp.set_preference("javascript.enabled", False)

driver = webdriver.Firefox(executable_path = r'C:\ProgramData\Anaconda3\Scripts\geckodriver.exe')

driver.get("http://www.santostang.com/2018/07/04/hello-world/")
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值