学习笔记 requests + BeautifulSoup
第一步:requests
get请求
# -*- coding:utf-8 -*-
# 日期:2018/5/15 17:46
# Author:小鼠标
import requests
url = "http://www.baidu.com"
#res = requests.get(url) #方法1 res = requests.request('get',url) #方法2
print('响应状态码:',res.status_code) print('响应内容:',res.text)
post请求
# -*- coding:utf-8 -*-
# 日期:2018/5/15 17:46
# Author:小鼠标
import requests
url = "http://www.baidu.com"
data = {
'username': 'xiaoshubiao',
'pwd': 'xiaoshubiao'
}
res = requests.post(url,data)
print('响应状态码:',res.status_code)
print('响应内容:',res.text)
第二步:伪装浏览器和伪造cookie
# -*- coding:utf-8 -*-
# 日期:2018/5/15 17:46
# Author:小鼠标
import requests
url = "http://www.baidu.com"
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36'
' (KHTML, like Gecko) Chrome/55.0.2883.87 UBrowser/6.2.39'
'64.2 Safari/537.36',
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0'
'.9,image/webp,*/*;q=0.8',
'Accept-Encoding': 'gzip, deflate, sdch',
'Accept-Language': 'zh-CN,zh;q=0.8,en;q=0.6',
'Cache-Control': 'max-age=0',
'Connection': 'keep-alive'
}
cookies = dict(name='xiaoshubiao')
res = requests.get(url,headers = headers,cookies = cookies)
print('响应状态码:',res.status_code)
print('响应内容:',res.text)
第三步:使用代理ip
# -*- coding:utf-8 -*-
# 日期:2018/5/15 17:46
# Author:小鼠标
import requests
url = "http://www.baidu.com"
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36'
' (KHTML, like Gecko) Chrome/55.0.2883.87 UBrowser/6.2.39'
'64.2 Safari/537.36',
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0'
'.9,image/webp,*/*;q=0.8',
'Accept-Encoding': 'gzip, deflate, sdch',
'Accept-Language': 'zh-CN,zh;q=0.8,en;q=0.6',
'Cache-Control': 'max-age=0',
'Connection': 'keep-alive'
}
cookies = dict(name='xiaoshubiao')
proxies = {'http':'218.73.134.234:36602'}
res = requests.get(url,headers = headers,cookies = cookies,proxies = proxies)
print('响应状态码:',res.status_code)
print('响应内容:',res.text)
第四步:内容解析
# -*- coding:utf-8 -*-
# 日期:2018/5/15 17:46
# Author:小鼠标
import requests
from bs4 import BeautifulSoup
url = "http://news.sina.com.cn/guide/"
res = requests.get(url)
res.encoding = 'utf-8'
web_data = res.text
#内容解析
soup = BeautifulSoup(web_data,'lxml')
title_list = soup.select('title') #获取标签内容 返回为列表
a_list = soup.select('a')
ul_list = soup.select('ul.list01') #获取类名为list01的ul的内容 返回为列表
div_list = soup.select('div#tab01') #获取id为tab01的内容 返回为列表
for title , a in zip(title_list,a_list):
title_content = title.get_text() #获取标签内容的值
a_href = a.get('href') #获取标签的属性的值
print(title_content,a_href)
学习笔记 requests + BeautifulSoup的更多相关文章
- Python爬虫学习三------requests+BeautifulSoup爬取简单网页
第一次第一次用MarkDown来写博客,先试试效果吧! 昨天2018俄罗斯世界杯拉开了大幕,作为一个伪球迷,当然也得为世界杯做出一点贡献啦. 于是今天就编写了一个爬虫程序将腾讯新闻下世界杯专题的相关新 ...
- 吴裕雄--python学习笔记:BeautifulSoup模块
import re import requests from bs4 import BeautifulSoup req_obj = requests.get('https://www.baidu.co ...
- 吴裕雄--天生自然python学习笔记:beautifulsoup库的使用
Beautiful Soup 库简介 Beautiful Soup提供一些简单的.python式的函数用来处理导航.搜索.修改分析树等功能.它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简 ...
- python学习笔记(26)-request模块
python学习笔记 #requests import requests #from class_005.http_resuest import HttpRequest login_url = &qu ...
- Requests:Python HTTP Module学习笔记(一)(转)
Requests:Python HTTP Module学习笔记(一) 在学习用python写爬虫的时候用到了Requests这个Http网络库,这个库简单好用并且功能强大,完全可以代替python的标 ...
- python网络爬虫学习笔记(二)BeautifulSoup库
Beautiful Soup库也称为beautiful4库.bs4库,它可用于解析HTML/XML,并将所有文件.字符串转换为'utf-8'编码.HTML/XML文档是与“标签树一一对应的.具体地说, ...
- 孤荷凌寒自学python第七十天学习并实践beautifulsoup对象用法3
孤荷凌寒自学python第七十天学习并实践beautifulsoup对象用法3 (完整学习过程屏幕记录视频地址在文末) 今天继续学习beautifulsoup对象的属性与方法等内容. 一.今天进一步了 ...
- 孤荷凌寒自学python第六十九天学习并实践beautifulsoup对象用法2
孤荷凌寒自学python第六十九天学习并实践beautifulsoup对象用法2 (完整学习过程屏幕记录视频地址在文末) 今天继续学习beautifulsoup对象的属性与方法等内容. 一.今天进一步 ...
- 孤荷凌寒自学python第六十八天学习并实践beautifulsoup模块1
孤荷凌寒自学python第六十八天学习并实践beautifulsoup模块1 (完整学习过程屏幕记录视频地址在文末) 感觉用requests获取到网页的html源代码后,更重要的工作其实是分析得到的内 ...
随机推荐
- leetcode python 032 识别最长合法括号
# 给定一个只包含字符'('和')'的字符串,# 找到最长的有效(格式良好)括号子字符串的长度.# 对于“(()”,最长的有效括号子串是“()”,其长度为2.# 另一个例子是“)()())”,其中最长 ...
- kafka consumer重复消费问题
在做分布式编译的时候,每一个worker都有一个consumer,适用的kafka+zookeep的配置都是默认的配置,在消息比较少的情况下,每一个consumer都能均匀得到互不相同的消息,但是当消 ...
- Linux 创建虚拟机,配置网卡,桥接,连接XShell
一.新建虚拟机 1.“root” 输入密码: 2.看虚拟机的IP地址 “ifconfig” 二.配置网卡 1.更改设置(打开vim编辑) “vim /etc/sysconfig/network- ...
- CC攻击原理及防范方法
一. CC攻击的原理: CC攻击的原理就是攻击者控制某些主机不停地发大量数据包给对方服务器造成服务器资源耗尽,一直到宕机崩溃.CC主要是用来消耗服务器资源的,每个人都有这样的体验:当一个网页访问的人数 ...
- linux基础之bash特性
linux基础之bash特性 1.命令历史 命令历史包含的环境变量 $HISTSIZE:命令历史记录的条数 $HISTFILE:命令历史文件~/.bash_history $HISTFILESIZE: ...
- Visual Studio AI 离线模型训练(Windows10)
一.序 环境搭建:[查看] samples-for-ai项目下载:[下载],两个版本,一个2018年6月15日前,一个2018年6月15日-16日版本(当前最新版本). 在环境搭建过程中,通过git ...
- python 进程池的使用和坑
from multiprocessing import Pool,Process import time,os def Foo(a):#创建函数 time.sleep(2) print('in the ...
- SG函数 2019- 杭师范校赛
#include<bits/stdc++.h> using namespace std; ; int sg[maxn]; int f[maxn]; int s[maxn]; void ma ...
- Go Example--自定义排序
package main import ( "fmt" "sort" ) //定义类型别名 type ByLength []string func (s ByL ...
- s2第二章深入c#类型
S2第二章预习笔记 深入c# 数据类型 常用类型 java c# 举例 整形 int int 年龄 浮点型 float ...