爬虫笔记(一)

30 篇文章 0 订阅
13 篇文章 0 订阅

1.安装 bs4

pip install bs4

2.安装Selenium

pip install Selenium

3.安装浏览器驱动
Chrome驱动文件下载:Chrome
Firefox驱动文件下载:Firefox

下载后将其中的执行程序放到python的script文件夹中,就可以了。

爬取动态网页内容:

4.使用Selenium

from selenium import webdriver
from time import sleep
#executable_path 不能少,后边就是上面安装的驱动的位置
driver = 
webdriver.Firefox(executable_path=r'C:\Users\Administrator\python39\Scripts\geckodriver.exe')

driver.get("http://www.santostang.com/2018/07/04/hello-world/")

5.爬取第一个评论

from selenium import webdriver
from time import sleep

driver = webdriver.Firefox(executable_path=r'C:\Users\Administrator\python39\Scripts\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']"))
# 使用CSS选择器查找元素,找到class为'reply-content'的div元素
comment = driver.find_element_by_css_selector('div.reply-content')

# 通过元素的tag去寻找‘p’元素
content = comment.find_element_by_tag_name('p')
print(content.text)

这是因为源代码需要解析成一个iframe,则需要添加如下一行代码。
driver.switch_to.frame(driver.find_element_by_css_selector("iframe[title='livere']"))
==title=‘livere’==是页面中的,所有不同页面可能不同。

6.爬取一页中的所有评论,即多个元素
element后面加上s

comments = driver.find_elements_by_css_selector('div.reply-content')

for eachcomment in comments:
    content = eachcomment.find_element_by_tag_name('p')
    print(content.text)

7.另一种方法

from selenium import webdriver
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
import time

# 通过selenium启动博客网站
caps = webdriver.DesiredCapabilities().FIREFOX
caps["marionette"] = True #不能是False
binary = FirefoxBinary(r'C:\Program Files\Mozilla Firefox\firefox.exe')

driver = webdriver.Firefox(firefox_binary=binary, capabilities=caps)
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']"))

comments = driver.find_elements_by_css_selector('div.reply-content')
for eachcomment in comments:
    content = eachcomment.find_element_by_tag_name('p')
    print(content.text)

8.查看网页中的内容
1.右键点击检查
在这里插入图片描述

(1)左上角的箭头,点击一次后可以去点击网页上你想要查看的部分,就会移动到该部分的代码。
(2)在network中的ALL部分,一般在第一个是网页的配置,在header中可以找的网页的 agent 和 host 这两个重要信息。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

落春只在无意间

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值