python-web-习题
1.简单描述 webbrowser、requests、BeautifulSoup 和 selenium 模块之间的不同
webbrowser模块有一个 open() 方法,它启动 web 浏览器,打开指定的 URL,就 这样。
Requests 模块可以从网上下载文件和页面。
BeautifulSoup 模块解析 HTML。
最后,selenium 模块可以启动并控制浏览器
2.requests.get()返回哪种类型的对象?如何以字符串的方式访问下载的内容?
requests.get() 函数返回一个 Response 对象,它有一个 text 属性,包含下载 内容的字符串
3.哪个 Requests 方法检查下载是否成功?
如果下载有问题,raise_for_status() 方法将抛出异常,如果下载成功,什么也不做
4.如何取得 Requests 响应的 HTTP 状态码?
Response 对象的 status_code 属性包含了 HTTP 状态码
5.如何将 Requests 响应保存到文件?
以'wb',即“写二进制”模式在你的计算机上打开新文件后,
利用一个 for 循环迭代遍历 Response 对象的 iter_content() 方法,将各段写入该文件。
下面是例子:
saveFile = open('filename.html', 'wb')
for chunk in res.iter_content(100000):
saveFile.write(chunk)
6.要打开浏览器的开发者工具,快捷键是什么?
F12 在Chrome 中打开开发者工具。按下 Ctrl-Shift-C(在 Windows 和Linux 上) 或 -Option-C(在 OS X),在 Firefox 中打开开发者工具
7.在开发者工具中,如何查看页面上特定元素的 HTML?
右键点击页面上的元素,并从菜单中选择 Inspect Element
8.要找到 id 属性为 main 的元素,CSS 选择器的字符串是什么?
#main
9.要找到 CSS 类为 highlight 的元素,CSS 选择器的字符串是什么?
'.highlight'
10.要找到一个<div>元素中所有的<div>元素,CSS 选择器的字符串是什么?
'div div'
11.要找到一个<button>元素,它的 value 属性被设置为 favorite,CSS 选择器 的字符串是什么?
'button[value="favorite"]'
12.假定你有一个 Beautiful Soup 的Tag 对象保存在变量 spam中,针对的元素是 <div>Hello world!</div>。如何从这个 Tag 对象中取得字符串'Hello world!'?
spam.getText()
13.如何将一个Beautiful Soup的Tag 对象的所有属性保存到变量 linkElem中?
linkElem.attrs
14.运行 import selenium 没有效果。如何正确地导入 selenium 模块?
selenium 模块是通过 from selenium import webdriver 导入的
15.find_element_*和 find_elements_*方法之间的区别是什么?
.find_element_* 方法将第一个匹配的元素返回,作为一个 WebElement 对象。
find_elements_* 方法返回所有匹配的元素,作为一个 WebElement 对象列表
16.Selenium 的WebElement 对象有哪些方法来模拟鼠标点击和键盘击键?
click() 和 send_keys() 方法分别模拟鼠标点击和键盘按键
17.你可以在 Submit 按钮的 WebElement 对象上调用 send_keys(Keys.ENTER),但 利用 selenium,还有什么更容易的方法提交表单?
对表单中的任意对象调用 submit() 方法将提交该表单
18.利用 selenium如何模拟点击浏览器的“前进”、“返回”和“刷新”按钮
forward()、back() 和refresh() 等WebDriver 对象方法模拟了这些浏览器按钮
python-web-习题的更多相关文章
- 《Python Web开发学习实录》高清PDF版|百度网盘免费下载|Python Web开发学习实录
<Python Web开发学习实录>高清PDF版|百度网盘免费下载|Python Web开发学习实录 提取码:9w3o 内容简介 Python是目前流行的动态脚本语言之一. 李勇,本书共1 ...
- Redis的Python实践,以及四中常用应用场景详解——学习董伟明老师的《Python Web开发实践》
首先,简单介绍:Redis是一个基于内存的键值对存储系统,常用作数据库.缓存和消息代理. 支持:字符串,字典,列表,集合,有序集合,位图(bitmaps),地理位置,HyperLogLog等多种数据结 ...
- Python Web 方向(一)
Python Web 方向(一) --------Django站点创建 文章地址:http://www.cnblogs.com/likeli/p/5821744.html Python版本:2.7 推 ...
- 浅谈五大Python Web框架
转载:http://feilong.me/2011/01/talk-about-Python-web-framework 说到Web Framework,Ruby的世界Rails一统江湖,而Pytho ...
- nginx上部署python web
nginx上部署python web http://uwsgi-docs.readthedocs.io/en/latest/tutorials/Django_and_nginx.html
- 全面解读python web 程序的9种部署方式
转载自鲁塔弗的博客,本文地址http://lutaf.com/141.htm python有很多web 开发框架,代码写完了,部署上线是个大事,通常来说,web应用一般是三层结构 web serve ...
- Python Web 开发的十个框架【转载】
Python 是一门动态.面向对象语言.其最初就是作为一门面向对象语言设计的,并且在后期又加入了一些更高级的特性.除了语言本身的设计目的之外,Python标准 库也是值得大家称赞的,Python甚至还 ...
- tornado 学习笔记2 Python web主流框架
2.1 Django 官方网址:https://www.djangoproject.com/ 简介:Django is a high-level Python Web framework that e ...
- python web框架——扩展Django&tornado
一 Django自定义分页 目的:自定义分页功能,并把它写成模块(注意其中涉及到的python基础知识) models.py文件 # Create your models here. class Us ...
- 5个最好的Python Web开发框架
Python是最受欢迎的和最有效率的开发语言之一.Python能让你更快完成工作,并且更有效地集成系统.Python是动态的面向对象的语言.即便你刚刚开始学习Python,也立即就能获得生产力上的提升 ...
随机推荐
- PHP算法之字符串转换整数 (atoi)
请你来实现一个 atoi 函数,使其能将字符串转换成整数. 首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止. 当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之 ...
- CF773E Blog Post Rating
题意:有一篇博客.一共有n个人,心中有他们期望该博客得到的赞数a[i].当某个时刻该博客的获赞数<a[i],则该人会使得赞数+1,当赞数>a[i],该人会使得赞数-1,当赞数=a[i],不 ...
- thinkphp 模型定义
模型定义 模型类并非必须定义,只有当存在独立的业务逻辑或者属性的时候才需要定义. 模型类通常需要继承系统的\Think\Model类或其子类,下面是一个Home\Model\UserModel类的定义 ...
- [NOI 2018]冒泡排序
题意:求所有字典序大于给定序列且满足条件的排列个数之和. 思路: 考虑dp即可,打表出卡特兰数优化,直接dp可以44... #include <bits/stdc++.h> using n ...
- Windbg Step 2 分析程序堆栈实战
#include "stdafx.h" #include <tchar.h> #ifdef _UNICODE #define _ttol _wtol #else #de ...
- el-table单元格新增、编辑、删除功能
<template> <div class="box"> <el-button class="addBtn" type=" ...
- 2017/7/26 SCJP英语学习
1 Declarations and Access Control ............... 1 Java Refresher . . . . . . . . . . . . . . . . . ...
- Sequelize
连接数据库 const DB = require('sequelize') // 连接数据库 const connect = new DB('xjg', 'root', 'root', { host: ...
- java中 ++a 与 a++ 的区别
public static void main(String[] args) { int a = 5; a ++; System.out.println(a); int b = 5; ++ b; Sy ...
- 数据可视化(matplotilb)
一,matplotilb库(数学绘图库) mat数学 plot绘图 lib库 matplotlib.pyplot(缩写mp)->python 最常用接口 mp.plot(水平坐标,垂直坐标数组 ...