大家好,我是python222小锋老师。前段时间卷了一套Python3零基础7天入门实战以及1小时掌握Python操作Mysql数据库之pymysql模块技术

近日锋哥又卷了一波课程,python爬虫【基础篇】 涵盖 requests、beautifulsoup、selenium,文字版+视频版。1天掌握。

视频版教程:一天掌握python爬虫【基础篇】 涵盖 requests、beautifulsoup、selenium

文字版目录+内容:

第一章:网络爬虫介绍

第二章:requests网络请求模块

2.1requests模块简介及安装

2.2requests之get请求实例-百度搜索

2.3requests之post请求实例-百度翻译

2.4requests之代理

2.5requests之Cookie

2.6requests之Session

第三章:BeautifulSoup网页解析模块

3.1beautifulsoup模块简介及安装

3.2beautifulsoup解析本地文件之基础语法

3.3beautifulsoup网络抓取和解析cnblog首页帖子数据

第四章:selenium动态网页解析模块

4.1selenium模块简介

4.2selenium驱动下载,模块安装以及基本使用

4.3selenium元素的定位

4.4selenium获取元素信息

4.5selenium交互

4.6selenium无界面headless

附上一些优质代码片段:

import requestsimport jsonurl = "https://fanyi.baidu.com/sug"headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.0.0 Safari/537.36'}data = {'kw': 'white'}r = requests.post(url=url, data=data, headers=headers)print(r.text)# json.loads方法自动把unicode编码转成中文result = json.loads(r.text)print(result)
from selenium import webdriverfrom selenium.webdriver.chrome.options import Optionsfrom selenium.webdriver.common.by import Byimport timechrome_options = Options()chrome_options.add_argument('--headless')chrome_options.add_argument('--disable‐gpu')# 自己的Chrome浏览器文件路径path = r'C:\Users\java1234\AppData\Local\Google\Chrome\Application\chrome.exe'chrome_options.binary_location = pathbrowser = webdriver.Chrome(options=chrome_options)url = "https://www.baidu.com"browser.get(url)time.sleep(2)browser.get_screenshot_as_file("百度首页.png")# 获取文本框的对象input = browser.find_element(By.ID, "kw")# 在文本框中输入pythoninput.send_keys('python')time.sleep(2)# 获取百度一下的按钮button = browser.find_element(By.ID, 'su')# 点击按钮button.click()time.sleep(2)# 滑到底部# js_bottom = 'window.scrollTo(0,document.body.scrollHeight)'js_bottom = 'document.documentElement.scrollTop=10000'js_top = 'document.documentElement.scrollTop=0'browser.execute_script(js_bottom)time.sleep(2)browser.execute_script(js_top)time.sleep(2)browser.get_screenshot_as_file("第一页截图.png")# 获取下一页的按钮next_button = browser.find_element(By.XPATH, '//a[@class="n"]')# 点击下一页next_button.click()time.sleep(2)browser.execute_script(js_bottom)browser.get_screenshot_as_file("下一页截图.png")time.sleep(2)# 返回到前一个历史记录 相当于 浏览器的返回按钮browser.back()time.sleep(2)# 返回到后一个历史记录相当于 浏览器的前进按钮browser.forward()browser.execute_script(js_bottom)time.sleep(2)# 退出browser.quit()