利用requests库访问360主页20次
一、安装
1、cmd进入命令行界面
2、直接输入 D:切换至D盘(python所在路径),
然后cd python下的scripts所在路径,切换至pip所在位置
3、pip install requests 即可安装requests
其中,pip版本过低时,使用:python -m pipinstall --upgrade pip升级pip版本
二、requests的使用
循环访问一个网页多次:
import requests url = 'https://hao.360.cn//' fout = open('result.txt', 'w') for i in range(10): r=requests.post(url) fout.write(url+' : OK withstatus_code: '+str(r.status_code)) print(url+' : OK withstatus_code: '+str(r.status_code)) fout.close()
爬取中国大学排行
import requests
from bs4 import BeautifulSoup
import bs4
from pandas import DataFrame def getHTML(url):
try:
r = requests.get(url, timeout=30)
r.raise_for_status()
#解码格式
r.encoding = r.apparent_encoding
return r.text
except:
print("获取错误") def moveToList(ulist, html):
soup = BeautifulSoup(html, "html.parser")
# print(soup.find('tbody').childern)
# 找到目标数据标签,遍历tbody的孩子
for tr in soup.find('tbody').children:
# 过滤,如果tr的类型是bs4.element.Tag,那就是目标类型
if isinstance(tr, bs4.element.Tag):
# print(tr)
#将所有td标签(列值)存储到列表中
tds = tr('td')
# 将每个列表添加到大列表中作为一个元素,只取前三列(排名,大学,省份)的string(内容)
ulist.append([tds[0].string, tds[1].string, tds[2].string]) def printHTML(ulist,num):
tplt="{0:^6}\t{1:{3}^10}\t{2:<10}"
print(tplt.format("排名", "学校名称", "省份",chr(12288)))
for i in range(num):
u=ulist[i]
print(tplt.format(u[0], u[1], u[2],chr(12288)))
pass def main():
url = "http://www.zuihaodaxue.com/zuihaodaxuepaiming2018.html"
html = getHTML(url)
# print(html)
uinfo = []
moveToList(uinfo, html)
frame=DataFrame(uinfo)
#这里可以将内容输出到csv文件,data是项目下的包,修改相对路劲即可
#frame.to_csv("../data/bestUniversity.csv",index=0)
printHTML(uinfo,20)
main()
利用requests库访问360主页20次的更多相关文章
- 利用requests库访问网站
1.关于requests库 函数 Response对象包含服务器返回的所有信息,也包含请求的Request信息. 访问百度二十次 import requests def getHTMLText(url ...
- python脚本实例002- 利用requests库实现应用登录
#! /usr/bin/python # coding:utf-8 #导入requests库 import requests #获取会话 s = requests.session() #创建登录数据 ...
- python利用requests库模拟post请求时json的使用
我们都见识过requests库在静态网页的爬取上展现的威力,我们日常见得最多的为get和post请求,他们最大的区别在于安全性上: 1.GET是通过URL方式请求,可以直接看到,明文传输. 2.POS ...
- 爬虫入门实例:利用requests库爬取笔趣小说网
w3cschool上的来练练手,爬取笔趣看小说http://www.biqukan.com/, 爬取<凡人修仙传仙界篇>的所有章节 1.利用requests访问目标网址,使用了get方法 ...
- 利用Requests库写爬虫
基本Get请求: #-*- coding:utf-8 -*- import requests url = 'http://www.baidu.com' r = requests.get(url) pr ...
- requests库写接口测试框架初学习
学习网址: https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-dscpm/ff75b907-415d-4220-89 ...
- selenium原理应用 - 利用requests模拟selenium驱动浏览器
前言 selenium是一个web自动化测试的开源框架,它支持多语言:python/java/c#… 前面也有一篇文章说明了,selenium+浏览器的环境搭建. selenium支持多语言,是因为s ...
- 『居善地』接口测试 — 3、Requests库介绍
目录 1.Requests库 2.Requests库文档 3.Requests库安装 4.Requests库的使用 (1)使用步骤 (2)示例练习 5.补充:Json数据和Python对象互相转化 1 ...
- requests库结合selenium库共同完成web自动化和爬虫工作
我们日常工作中,单纯的HTTP请求,程序员都倾向于使用万能的python Requests库.但大多数场景下,我们的需求页面不是纯静态网页,网页加载过程中伴随有大量的JS文件参与页面的整个渲染过程,且 ...
随机推荐
- c++篇 vc++2010设置和c#一样的代码段,vs2010 两下tab设置
设置vs2010 tab敲两下出 for 片段,因为vs2010的代码片段是在番茄助手里设置的...代码片段管理器中不能设置c++ 所以我只能安装一个番茄助手了... 然后就是修改番茄助手内的[提示] ...
- flume到flume消息传递
环境:两台虚拟机( 每台都有flume) 第一台slave作为消息的产生者 第二台master作为消息的接收者 IP(192.168.83.133) 原理:通过监听slave中文件的变化,获取变 ...
- Elasticsearch 7.1.1 安装 pinyin 分词器插件
1.安装maven 安装插件前,需要用 maven 进行编译生成插件包,第一步先安装 maven yum install -y maven mvn -version Apache Maven (Red ...
- C++之救济金发放问题
n(n<20)个人站成一圈,逆时针编号为1~n.有两个官员,A从1开始逆时针数,B从n开始顺时针数.在每一轮中,官员A数k个就停下来,官员B数m个就停下来(注意有可能两个官员停在同一个人上).接 ...
- Docker在linux系统下的安装
系统要求 本安装教程仅限于CentOS7,其他系统不适用.centos-extras仓库必须是启用状态,这个仓库默认状态是启用,如果不是启用状态,请修改. 卸载旧版本的Docker Docker的旧版 ...
- Java的常用API之Object类简介
Object类 1.toString方法在我们直接使用输出语句输出对象的时候,其实通过该对象调用了其toString()方法. 2.equals方法方法摘要:类默认继承了Object类,所以可以使用O ...
- SQL系列(四)—— 唯一值(distinct)
有时需要查询某列上的不重复的数据,如: SELECT name FROM student; 结果: name lxy lxy lxy lxy 这样的结果显然不符合我们的需求.如何对列数据进行去重,查询 ...
- drools规则语法(一)
1.基本的匹配规则 1.1变量 drools使用匹配的方式对Fact进行比对, 比如 account : Account(balance > 100) 这个规则的含义就是在Fact中找到类型为A ...
- 事件绑定+call apply指向
JS高级 事件—— 浏览器客户端上客户触发的行为都称为事件 所有事件都是天生自带的,不需要我们去绑定,只需要我们去触发,通过obj.事件名=function(){ } 事件名:onmousemove: ...
- 关于UDP协议
UDP协议的特点. 1.UDP是一个无连接协议,传输数据之前接收端和发送端之间不建立连接. 想传输数据的时候就抓取数据扔出去,不监控是否被正确和全面的接受到. 2.因为不需要建立连接,也就不需要维护连 ...