一 requests请求库爬取豆瓣电影信息

  - 请求url https://movie.douban.com/top250

- 请求方式    GET​- 请求头   user-agent   cookies
import requests
import re
def get_page(url):response=requests.get(url)return responsedef parse_index(html):movie_list = re.findall('<div class="item">.*?<em class="">(.*?)</em>.*?<a href="(.*?)">.*?<span class="title">(.*?)</span>.*?导演: (.*?)主演: (.*?)<br>(.*?)</p>.*?<span class="rating_num".*?>(.*?)</span>.*?<span>(.*?)人评价</span>.*?<span class="inq">(.*?)</span>',html,re.S)return movie_listdef save_data(movie):top,m_url,name,daoyan,actor,year_type,point,commit,desc=movieyear_type=year_type.strip('\n')data=f'''
    ===============================电影排名:{top}电影url:{m_url}电影名称:{name}电影导演:{daoyan}电影主演:{actor}电影类型:{year_type}电影评分:{point}电影评论:{commit}电影简介:{desc}===============================\n'''
    print(data)with open('douban_top250.txt','a',encoding='utf-8')as f:f.write(data)print(f'电影:{name}写入成功...')if __name__ == '__main__':num=0for line in range(10):url=f'https://movie.douban.com/top250?start={num}&filter='num+=25print(url)index_res=get_page(url)movie_list=parse_index(index_res.text)for movie in movie_list:save_data(movie)

二 selenium请求库  1、什么是selenium? 期初是一个自动化测试工具,原理是驱动浏览器执行一些一定好的操作。爬虫本质上就是模拟浏览器,所以可以使用它来做爬虫。

2、为什么要使用selenium?
优点:
- 执行js代码
- 不需要分析复杂的通信流程
- 对浏览器做弹窗、下拉等操作
- ***** 获取动态数据
- *** 破解登录验证

缺点:
- 执行效率低

3、安装与使用
1. 安装selenium请求库:
pip3 install selenium

2. 必须安装浏览器
"谷歌"或者火狐

3.安装浏览器驱动
http://npm.taobao.org/mirrors/chromedriver/2.38/
windows:
下载win32驱动

selenium请求库爬虫京东网进程

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.wait import WebDriverWait
import timeimport time
driver= webdriver.Chrome(r'C:\Users\HP\Desktop\chromedriver.exe')
try:driver.get('https://www.jd.com/')wait = WebDriverWait(driver, 10)input_tag = wait.until(EC.presence_of_element_located((By.ID, 'key')))time.sleep(5)input_tag.send_keys('公仔')input_tag.send_keys(Keys.ENTER)time.sleep(20)
finally:driver.close()

selenium请求库爬虫登录百度

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import timeimport time
driver= webdriver.Chrome(r'C:\Users\HP\Desktop\chromedriver.exe')
try:driver.implicitly_wait(10)driver.get('https://www.baidu.com/')time.sleep(5)login_link = driver.find_element_by_link_text('登录')login_link.click()time.sleep(1)user_login = driver.find_element_by_id('TANGRAM__PSP_10__footerULoginBtn')user_login.click()time.sleep(1)# 3、find_element_by_class_nameuser = driver.find_element_by_class_name('pass-text-input-userName')user.send_keys('1847702753@qq.com')# 4、find_element_by_namepwd = driver.find_element_by_name('password')pwd.send_keys('*****')submit = driver.find_element_by_id('TANGRAM__PSP_10__submit')submit.click()login_link = driver.find_element_by_partial_link_text('登')login_link.click()login2_link = driver.find_element_by_css_selector('.tang-pass-footerBarULogin')login2_link.click()div = driver.find_elements_by_tag_name('div')print(div)time.sleep(20)
finally:driver.close()


转载于:https://www.cnblogs.com/zhoujie333/p/11122936.html

Day02:requests请求库,selenium请求库相关推荐

  1. day02 requests请求库爬取豆瓣电影信息+selenium请求库

    一. requests请求库爬取豆瓣电影信息 - 请求url http://movie.douban.com/top250 - 请求方式 GET - 请求头 user-agent    cookies ...

  2. dio设置自定义post请求_基于dio库封装flutter项目的标准网络框架

    网络框架是每个应用的基石,封装一个好的网络框架不仅是项目的一个好的开始,并且直接影响到随后项目的稳定性和可扩展性.在移动开发的各个端都有非常赞的网络请求基础框架,比如Android的okhttp库.s ...

  3. SWR 用于数据请求的 React Hooks 库

    SWR 用于数据请求的 React Hooks 库 "SWR" 这个名字来自于 stale-while-revalidate:一种由 HTTP RFC 5861 推广的 HTTP ...

  4. 基于猿题库网络请求再次封装

    下载地址:  https://github.com/weibo1314/WB_NeiApiManager WB_NetApiManager 介绍 ===================== 最近闲来无 ...

  5. 爬虫之requests模块发送post请求

    爬虫之requests模块发送post请求 思考:哪些地方我们会用到POST请求? 登录注册( 在web工程师看来POST 比 GET 更安全,url地址中不会暴露用户的账号密码等信息) 需要传输大文 ...

  6. pythonrequests发送数据_在python中使用requests 模拟浏览器发送请求数据的方法

    在python中使用requests 模拟浏览器发送请求数据的方法 如下所示: import requests url='http://####' proxy={'http':'http://#### ...

  7. 爬虫一 requests库与BeautifulSoup库、HTML

    安装requests库 方法是:在Mac电脑里打开终端软件(terminal),输入pip3 install requests,然后点击enter即可:Windows电脑里叫命令提示符(cmd),输入 ...

  8. Python网络编程:使用requests.post发送POST请求

    Python网络编程:使用requests.post发送POST请求 在Python中,requests是一个强大的库,它可以用于发送HTTP请求并且处理响应.requests.post()函数是这个 ...

  9. 使用 python requests 模块发送 http 请求及接收响应

    内容概要 如何构建GET 与 POST request 请求消息 对 request 的header , query string, message body 定制化 http header参数 co ...

最新文章

  1. hung-yi lee_p22_无监督学习:词嵌入
  2. stella forum v1.2 用例分析
  3. 实用ExtJS教程100例-009:ExtJS Form无刷新文件上传
  4. awksed story
  5. Enterprise Library - Security Application Block 学习手册(最新版) Part 1
  6. java web文件拖拽上传文件_Java实现拖拽文件上传dropzone.js的简单使用示例代码
  7. oracle 自定义比较函数
  8. 安装visio2016出现无法安装
  9. linux 开启ahci_AHCI (简体中文)
  10. self.button.clicked.connect的用法
  11. 谈谈Fragment的用法之Fragment实现Tab切换中的那些事
  12. python获取本机IP地址
  13. vue+weui 手机端项目
  14. STM32之定时器详解
  15. PA,MIOU,FWIOU
  16. 怎么将手机里的PDF文件转成图片
  17. C#窗体控件—pictureBox使用
  18. docker进入容器的方法
  19. 大数据期末课程设计实验案例:网站用户行为分析
  20. 【Datawhale可解释性机器学习笔记】预备知识学习

热门文章

  1. 【深度优先搜索】计蒜客:等边三角形
  2. 【java笔记】模拟B/S服务器
  3. PYTHON 笔记:函数的定义和调用
  4. HEVC码流简单分析
  5. cmd批量修改文件名 增加文字_Windows批处理脚本:以批量修改文件名为例
  6. mysql 储存过程放到哪_MySQL储存过程
  7. Python pip install修改默认下载路径
  8. Incorrect username or password (access token)
  9. Mybatis数据库连接报错:对实体 “characterEncoding“ 的引用必须以 ‘;‘ 分隔符结尾
  10. MySQL基础命令中文解析