一、安装

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次的更多相关文章

  1. 利用requests库访问网站

    1.关于requests库 函数 Response对象包含服务器返回的所有信息,也包含请求的Request信息. 访问百度二十次 import requests def getHTMLText(url ...

  2. python脚本实例002- 利用requests库实现应用登录

    #! /usr/bin/python # coding:utf-8 #导入requests库 import requests #获取会话 s = requests.session() #创建登录数据 ...

  3. python利用requests库模拟post请求时json的使用

    我们都见识过requests库在静态网页的爬取上展现的威力,我们日常见得最多的为get和post请求,他们最大的区别在于安全性上: 1.GET是通过URL方式请求,可以直接看到,明文传输. 2.POS ...

  4. 爬虫入门实例:利用requests库爬取笔趣小说网

    w3cschool上的来练练手,爬取笔趣看小说http://www.biqukan.com/, 爬取<凡人修仙传仙界篇>的所有章节 1.利用requests访问目标网址,使用了get方法 ...

  5. 利用Requests库写爬虫

    基本Get请求: #-*- coding:utf-8 -*- import requests url = 'http://www.baidu.com' r = requests.get(url) pr ...

  6. requests库写接口测试框架初学习

    学习网址:    https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-dscpm/ff75b907-415d-4220-89 ...

  7. selenium原理应用 - 利用requests模拟selenium驱动浏览器

    前言 selenium是一个web自动化测试的开源框架,它支持多语言:python/java/c#… 前面也有一篇文章说明了,selenium+浏览器的环境搭建. selenium支持多语言,是因为s ...

  8. 『居善地』接口测试 — 3、Requests库介绍

    目录 1.Requests库 2.Requests库文档 3.Requests库安装 4.Requests库的使用 (1)使用步骤 (2)示例练习 5.补充:Json数据和Python对象互相转化 1 ...

  9. requests库结合selenium库共同完成web自动化和爬虫工作

    我们日常工作中,单纯的HTTP请求,程序员都倾向于使用万能的python Requests库.但大多数场景下,我们的需求页面不是纯静态网页,网页加载过程中伴随有大量的JS文件参与页面的整个渲染过程,且 ...

随机推荐

  1. c++篇 vc++2010设置和c#一样的代码段,vs2010 两下tab设置

    设置vs2010 tab敲两下出 for 片段,因为vs2010的代码片段是在番茄助手里设置的...代码片段管理器中不能设置c++ 所以我只能安装一个番茄助手了... 然后就是修改番茄助手内的[提示] ...

  2. flume到flume消息传递

    环境:两台虚拟机( 每台都有flume) 第一台slave作为消息的产生者 第二台master作为消息的接收者    IP(192.168.83.133) 原理:通过监听slave中文件的变化,获取变 ...

  3. Elasticsearch 7.1.1 安装 pinyin 分词器插件

    1.安装maven 安装插件前,需要用 maven 进行编译生成插件包,第一步先安装 maven yum install -y maven mvn -version Apache Maven (Red ...

  4. C++之救济金发放问题

    n(n<20)个人站成一圈,逆时针编号为1~n.有两个官员,A从1开始逆时针数,B从n开始顺时针数.在每一轮中,官员A数k个就停下来,官员B数m个就停下来(注意有可能两个官员停在同一个人上).接 ...

  5. Docker在linux系统下的安装

    系统要求 本安装教程仅限于CentOS7,其他系统不适用.centos-extras仓库必须是启用状态,这个仓库默认状态是启用,如果不是启用状态,请修改. 卸载旧版本的Docker Docker的旧版 ...

  6. Java的常用API之Object类简介

    Object类 1.toString方法在我们直接使用输出语句输出对象的时候,其实通过该对象调用了其toString()方法. 2.equals方法方法摘要:类默认继承了Object类,所以可以使用O ...

  7. SQL系列(四)—— 唯一值(distinct)

    有时需要查询某列上的不重复的数据,如: SELECT name FROM student; 结果: name lxy lxy lxy lxy 这样的结果显然不符合我们的需求.如何对列数据进行去重,查询 ...

  8. drools规则语法(一)

    1.基本的匹配规则 1.1变量 drools使用匹配的方式对Fact进行比对, 比如 account : Account(balance > 100) 这个规则的含义就是在Fact中找到类型为A ...

  9. 事件绑定+call apply指向

    JS高级 事件—— 浏览器客户端上客户触发的行为都称为事件 所有事件都是天生自带的,不需要我们去绑定,只需要我们去触发,通过obj.事件名=function(){ } 事件名:onmousemove: ...

  10. 关于UDP协议

    UDP协议的特点. 1.UDP是一个无连接协议,传输数据之前接收端和发送端之间不建立连接. 想传输数据的时候就抓取数据扔出去,不监控是否被正确和全面的接受到. 2.因为不需要建立连接,也就不需要维护连 ...