20170717【笔记】第三讲:爬虫基础
来源:互联网 发布:115网盘mac 编辑:程序博客网 时间:2024/06/06 16:27
写在前面:此笔记不全,只记了我现在不太会的东西
使用requests包抓取网页信息
注意:需要包装headers,否则服务器会识别到你是机器人。
ua = 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36'headers = {'user-agent': ua}
以上ua是怎样拿到的呢?
调试工具:
- postman(可以先调试好,再写代码)
- fiddler
- charles
get函数带参数时,把参数当成dict传入
.json直接得到json格式(dict)(后台看到的都是字符串,我们看到的dict),免得用.text转换成dict
下载图片:
r = requests.get(url)img = Image.open(BytesIO(r.content))img.save('test.jpg')
根据后台的需要,选择用get还是post,一般用get的多。
超时处理?
编码问题(编码出问题时,再用以下代码进行解码编码)
b_text = text.decode('utf-8') # str -> bytess_text = b_text.encode('utf-8') # bytes -> str
命令行重定向:把sample.py的print输出重定向存入文件
$ python sample.py > a.txt
后续要讲的:
- 登陆问题
- cookies参数可以替换字符串,免得需要转换编码
- selenium web解决js动态网页的问题
- 多线程、分布式提高效率
阅读全文
0 0
- 20170717【笔记】第三讲:爬虫基础
- Java基础第三讲
- CCNA第三讲笔记
- C++笔记第三讲
- HTML基础第三讲---字体
- java基础第三讲详解
- Java基础:第三十一讲 常量成员
- Java基础:第三十二讲 静态成员
- Java基础:第三十四讲 包
- Java基础:第三十五讲 访问权限
- Java基础:第三十九讲 多态
- Android高级开发第三讲--应用程序基础
- 强化学习基础 第三讲 蒙特卡罗方法
- 强化学习基础 第三讲 蒙特卡罗方法
- 孙鑫VC学习笔记:第三讲
- MYSQL学习笔记 第三讲:数据类型
- 《机器学习基石》笔记:第三讲
- 第三讲
- 欧拉函数性质和模版
- jpgraph插件绘制折线图
- 412. Fizz Buzz
- 【吐槽】B站大量番剧下架,程序猿们这时都在干什么?
- Postgresql设置search_path
- 20170717【笔记】第三讲:爬虫基础
- hi3519 编译问题
- lua中的捕获(capture)
- 各种常见排序算法(复习)
- 李洋疯狂C语言之用递归解决李白喝酒问题(附填空题解法)
- Android活动与服务之间的通信
- 如何解决failed to push some refs to 'git@github.com:mail/file.git'
- PSSQL DEVELOPER连接外部数据库(oracle to oracle)
- go语言资源大全