dart 爬取 妹子图 豆瓣影评
代码
github
目的
dart 服务端爬虫实践
目标网站
妹子图
豆瓣影评
使用库
http : 类似fetch的请求库
dom : 类似服务端的jquery,对请求到的HTML,筛选解析
image: 图片下载保存
功能
解析目标网页,获取内容JSON
下载目标图片
代码
妹子图
根据目标页面元素,获取图片地址
getImage([page = 1]) async {try {var headers = {'User-Agent':'Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1'};var res = await http.get(page == 1? 'https://www.mzitu.com': 'https://www.mzitu.com/page/$page/',headers: headers);if (res.statusCode == 200) {String body = res.body;Document dom = parse(body);var imgs = dom.querySelectorAll('#pins > li > a > img');imgs.forEach((v) {String filename = v.attributes['alt'];Download.image(v.attributes['data-original'],filename.replaceAll(' ', ''),{'Referer': 'https://www.mzitu.com/'});});}} catch (e) {print(e);}
}
图片下载
妹子图下载需要设置referer
class Download {// 下载图片static image(url, fileName, [Map<String, String> headers]) async {try {var res = await http.get(url, headers: headers);var image = img.decodeImage(res.bodyBytes);await File('./img/${fileName}.png').writeAsBytes(img.encodePng(image));} catch (e) {print(e);}}
}
豆瓣
douban([page = 1]) async {try {var headers = {'User-Agent':"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36"};var res = await http.get('https://movie.douban.com/subject/3882715/reviews?start=${20 * page}',headers: headers);if (res.statusCode == 200) {String body = res.body;Document dom = parse(body);var items = dom.querySelectorAll('.main.review-item');items.forEach((v) {String name = v.querySelector('.name').text.trim();String avator = v.querySelector('.avator img').attributes['src'];String content = v.querySelector('.short-content').text.trim();String time = v.querySelector('.main-meta').text.trim();print({'name': name, 'avatar': avator, 'content': content, 'time': time});});}} catch (e) {print(e);}
}
展示
相关
IP代理池构建
dart 爬取 妹子图 豆瓣影评相关推荐
- python爬虫爬妹子图_【爬虫】直接上干货-爬取妹子图整站图片
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #coding=utf-8 import os import requests from lxml import etree import time cl ...
- 基于selenium+scrapy爬取复仇者联盟4豆瓣影评数据
基于selenium+scrapy爬取复仇者联盟4豆瓣影评数据 参考资料: 黑马程序员爬虫教程 静觅爬虫教程 mac下anaconda安装selenium+PhantomJS scrapy下载中间件结 ...
- python爬取妹子图片1_【爬虫】直接上干货-爬取妹子图整站图片
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #coding=utf-8 import os import requests from lxml import etree import time cl ...
- 【Python】从爬虫开始吧——爬取妹子图整站
首先得解决环境和工具的问题 Python基础教程 Python3基础教程 大家也可以去慕课网看视频学习哦,关于选择Python2还是Python3的问题,上手的话还是直接选择3吧. 关于爬虫 爬虫就是 ...
- 用 Python 爬取 500 条豆瓣影评,看看《蚁人2》是否有看点?
作者 | 量化小白H 责编 | 郭芮 "不以大小论英雄."<蚁人2>已热映多天,本文就来看看豆瓣电影上的这部片子评分如何,从代码和数据层面给出最客观的解读. 作为练手, ...
- Python爬虫入门教程:爬取妹子图网站 - 独行大佬
妹子图网站---- 安装requests打开终端:使用命令pip3 install requests等待安装完毕即可使用接下来在终端中键入如下命令?123# mkdir demo # cd demo# ...
- python多线程爬取妹子图网站_python爬取妹子图全站全部图片-可自行添加-线程-进程爬取,图片去重...
from bs4 import BeautifulSoup import sys,os,requests,pymongo,time from lxml import etree def get_fen ...
- Python爬虫福利:带你爬取妹子图上的美女图片,学习改变生活
学习python爬虫,总得实战演练一下才能真正有所收获.今天我们就来用python爬虫爬取妹子图,哇~全是美女哦!那么,我们步入正题吧! 看完这篇文章,你将会用python爬虫做到这样: 首先我们打开 ...
- python scrapy 爬取妹子图的照片
主要描述在windows 上如何用scrapy抓取煎蛋网妹子图所有的图片下载. 软件准备:winpython,啥都不说了,ipython很好用. 安装scrapy,进入winpython 执行scra ...
- 用scrapy爬取妹子图网的图片,附上源代码
实现这个是因为之前在谋个公众号里面看到一篇文章,关注了也拿不到源代码 ,所以就自己写了一个爬取这个网站图片的功能.个人觉得这个网站的图片就一般吧. 开始 环境,py3, win, linux下运行都是 ...
最新文章
- Lyft估值目标近200亿美元 有望成今年来美国最大IPO
- HEOI 2012 旅行问题
- 英伟达推出Super显卡,老黄再现精准“刀法”,网友:都是被AMD逼的
- C 语言编程 — 高级数据类型 — 数组
- JavaScriptDOM
- 《复杂》读书笔记(part6)--计算机中的自我复制
- 在Logstash中配置多个管道
- clearTaskOnLaunch的作用,自己总结,求关注
- Python中的numpy.ones()
- 选择JSF不选Struts的十大理由
- 【315天】每日项目总结系列053(2017.12.17)
- Atitit 游戏的原理与概论attilax总结
- 编程语言为什么不能用中文
- 二甲苯酚的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
- 使用中文维基百科语料库训练一个word2vec模型 12.1
- 解决ORA-00054错误
- Table was not locked with LOCK TABLES
- NLP实战之HAN文本分类
- java飘动_OpenGL -- 飘动的旗帜 (java)
- 用 BeautifulSoup 解析器分析 RSS