豆瓣网的爬取和练习代码
豆瓣:
from selenium import webdriver import time import requests from lxml import etree import base64# 操作浏览器 driver = webdriver.Chrome() url = 'https://accounts.douban.com/login?alias=&redir=https%3A%2F%2Fwww.douban.com%2F&source=index_nav&error=1001'driver.get(url) time.sleep(1) driver.find_element_by_id('email').send_keys('18510556963') time.sleep(1) driver.find_element_by_id('password').send_keys('yaoqinglin2011') time.sleep(1)# 获取验证码相关信息 # html_str = driver.page_source # html_ele = etree.HTML(html_str) # # 得到验证码的url # image_url = html_ele.xpath('//img[@id="captcha_image"]/@src')[0] # # 获取这个图片的内容 # response = requests.get(image_url) # # # 获取base64的str # # https://market.aliyun.com/products/57124001/cmapi028447.html?spm=5176.2020520132.101.5.2HEXEG#sku=yuncode2244700000 # b64_str = base64.b64encode(response.content) # v_type = 'cn' # # post 提交打码平台的数据 # form = { # 'v_pic': b64_str, # 'v_type': v_type, # } # # # authtication的header # headers = { # 'Authorization': 'APPCODE eab23fa1d03f40d48b43c826c57bd284', # } # # 从打码平台获取验证码信息 # dmpt_url = 'http://yzmplus.market.alicloudapi.com/fzyzm' # response = requests.post(dmpt_url, form, headers=headers) # print(response.text) # # captcha_value 就是我们的验证码信息 # captcha_value = response.json()['v_code'] # # print(image_url) # print(captcha_value) # captcha_value = input('请输入验证码')# driver.find_element_by_id('captcha_field').send_keys(captcha_value) # time.sleep(1) driver.find_element_by_class_name('btn-submit').click() time.sleep(1) # 获取所有的cookie的信息 cookies = driver.get_cookies() cookie_list =[]# 对于每一个cookie_dict, 就是将name 和 value取出, 拼接成name=value; for cookie_dict in cookies:cookie_str = cookie_dict['name'] + '=' + cookie_dict['value']cookie_list.append(cookie_str)# 拼接所有的cookie到header_cookie中 header_cookie = '; '.join(cookie_list)headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36','Cookie': header_cookie, } another_url = 'https://www.douban.com/accounts/' response = requests.get(another_url, headers=headers)with open('cc.html', 'wb') as f:f.write(response.content)# with open('douban.html', 'wb') as f: # f.write(driver.page_source.encode('utf-8'))
练习:
from selenium import webdriver import time url = 'http://www.baidu.com'driver = webdriver.Chrome()driver.get(url)driver.find_element_by_id('kw').send_keys('我爱你') driver.find_element_by_id('su').click() time.sleep(1)with open('baidu.html','wb') as f :f.write(driver.page_source.encode('utf-8'))
豆瓣网的爬取和练习代码相关推荐
- python爬虫网络数据包_Python爬虫之多线程图虫网数据爬取(十六)
Python爬虫之多线程图虫网数据爬取(十六) 发布时间:2019-05-14 10:11, 浏览次数:289 , 标签: Python 原创不易,转载前请注明博主的链接地址:Blessy_Zhu h ...
- 知网爬虫——爬取某个主题下的文章标题以及发表时间
前几天帮朋友做了个知网的爬虫,爬取了"新闻传播"主题下的文章标题及发表时间:自己拖拖拉拉写了2天才写完,自己还是太弱了.个人认为这个作为一个练手的爬虫小项目还是不错的,于是写了主要 ...
- python爬虫 豆瓣影评的爬取cookies实现自动登录账号
python爬虫 豆瓣影评的爬取cookies实现自动登录账号 频繁的登录网页会让豆瓣锁定你的账号-- 网页请求 使用cookies来实现的自动登录账号,这里的cookies因为涉及到账号我屏蔽了,具 ...
- 【python】爬虫入门:代理IP池的使用、文件的写入与网易云爬取时的注意事项
一.概述 在两天前实现利用爬虫爬取网易云音乐用户的各类公开信息之后,我对现有爬虫进行了功能上的增加.主要有: ①.使用代理IP池防止IP被封: ②.将爬取用户的听歌记录.歌单.关注.粉丝这四类数据的代 ...
- JAVA爬虫(一):豆瓣电影排行榜爬取
JAVA爬虫(一):豆瓣电影排行榜爬取 前言 流程图 步骤 一.爬取豆瓣电影榜单网页源代码 二.网页源码解析 三.爬取单个电影网页源码 四.源代码解析及关键信息获取 前言 最近和大创队友一起给大创做的 ...
- 豆瓣电影影评爬取---最受欢迎的影评[xpath语法]
豆瓣电影影评爬取---最受欢迎的影评[xpath语法] 1.基础环境配置: requests-->版本:2.12.4 lxml-->版本:3.7.2 2.爬取网址:https://movi ...
- python爬虫实现豆瓣数据的爬取
本文利用urllib在python3.7的环境下实现豆瓣页面的爬取! 用到的包有urllib与re两个模块,具体实现如下! import urllib.request import re import ...
- 【selenium爬取】最新版可用某网职位爬取数据
文章目录 一.某网职位爬取 1.1 selenium的使用 1,2 开始爬取 一.某网职位爬取 共计8000组数据,需要数据和代码的,请到以下链接获取: https://download.csdn.n ...
- Colly实现豆瓣电影Top250爬取
使用 Colly 实现 豆瓣电影Top250爬取 package mainimport ("encoding/csv""github.com/PuerkitoBio/go ...
最新文章
- 学习搭建Hadoop+HBase+ZooKeeper分布式集群环境
- Python教程:lambda,filter,map的运用
- 判断直线与线段是否相交,相交则输出交点x轴坐标
- 零基础入门stm32需要学这些东西
- 【转】SharePoint 2013中修改windows 活动目录(AD)域用户密码的WebPart(免费下载)
- 汽车之家港股上市发行价定为176.3港元 募资35.6亿港元
- 《C关键字分析》之extern用法
- 硬,软连接,以及在windows中的用法
- springMVC简易学习笔记一
- mysql 日期与索引问题
- php操作mysql工具类_PHP操作数据库的工具类
- Nutch简介(转2)
- pcb地线应该不应该做成环路_电源PCB设计流程及要点全解析
- 从互联网+角度看云计算的现状与未来(2)
- jquery mobile mobiscroll 日期插件使 用mobiscroll
- C#:Krypton控件使用方法详解(第九讲) ——kryptonRadioButton
- 改进YOLOv5 | 头部解耦 | 将YOLOX解耦头添加到YOLOv5 | 涨点杀器
- 计算机硬盘的报废处理,看看电脑大神怎么直接把电脑干“报废”的!
- Spark 概述以及与Hadoop的关系
- 365天深度学习训练营-第6周:好莱坞明星识别