4.1.1 urllib2 和urllib是两个不一样的模块

urllib2最简单的就是使用urllie2.urlopen函数使用如下

urllib2.urlopen(url[,data[,timeout[,cafile[,capath[,cadefault[,context]]]]]])  按照文档urllib2.urlopen可以打开HTTP HTTPS FTP协议的URL链接地址,主演使用HTTP协议,他的参数以ca开头的都是跟身份验证有关,不常使用,data参数是post方法提交URL时使用,常用的是timeout参数,url参数是提交网络地址全称,前端是协议名,后端是端口号,timeout是超时时间设置,

函数返回对象有三个额外使用方法,geturl()函数返回的response的url信息,常用于重定向的情况,info()函数返回的response的基本信息, getcode()函数返回的response的状态代码,200成功, 404页面不存在, 503服务器暂时不可用,

刚开始,导入得模块是urllib2,但是运行出错,因为urllib在python3.0以上的版本使用的模块是urllib.request模块。响应的就要导入词模块。在print中也存在差别,write中使用的是String类型。也要做更改。才能正确执行。

另外就是要说明一点,在Linux中使用的vi 进行编程 前面必须添加声明语句,如果要调用模块必须导入响应的模块、

#!/usr/bin/env python
#-*- coding: utf-8 -*-

package com.tian;
import java.io.*;
import java.util.*;
import javax.swing.*;
import java.awt.Font;
import java.awt.event.*;
public class QuizCardBuilder {
    private JTextArea question;
    private JTextArea answer;
    private JFrame frame;
//    private ArrayList<QuizCard> cardList;
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        QuizCardBuilder builder=new QuizCardBuilder();
        builder.go();
    }
    public void go(){
        frame=new JFrame("Quiz Card Builder");
        JPanel mainPanel=new JPanel();
        Font bigFont=new Font("sanserif",Font.BOLD,23);
        question=new JTextArea(6,23);
        question.setLineWrap(true);
        question.setWrapStyleWord(true);
        question.setFont(bigFont);
        JScrollPane qScroller=new JScrollPane(question);
        qScroller.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
        qScroller.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
        answer=new JTextArea(6,20);
        answer.setLineWrap(true);
        answer.setWrapStyleWord(true);
        answer.setFont(bigFont);
        JScrollPane aScroller=new JScrollPane(answer);
        aScroller.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
        aScroller.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
        JButton nextbutton=new JButton("next button");
//        cardList=new ArrayList<QuizCard>();
        JLabel qLabel=new JLabel("Question");
        JLabel aLabel=new JLabel("Answer");
        mainPanel.add(qLabel);
        mainPanel.add(qScroller);
        mainPanel.add(aLabel);
        mainPanel.add(aScroller);
        mainPanel.add(nextbutton);
        nextbutton.addActionListener(new NextCardListener());
        JMenuBar menuBar=new JMenuBar();
        JMenu fileMenu=new JMenu("File");
        JMenuItem newMenuItem=new JMenuItem("new");
        JMenuItem saveMenuItem=new JMenuItem("save");
        newMenuItem.addActionListener(new NewMenuListener());
        saveMenuItem.addActionListener(new SaveMenuListener());
        fileMenu.add(newMenuItem);
        fileMenu.add(saveMenuItem);
        fileMenu.add(fileMenu);
        menuBar.add(fileMenu);
        frame.setJMenuBar(menuBar);
        frame.getContentPane().add(BroderLayout,mainPanel);
        frame.setSize(200,200);
        frame.setVisible(true);
    }
    
    public class  NextCardListener implements ActionListener{
        public void actionPerformed(ActionListener ev){
            QuizCard card=new QuizCard(question.getText(),answer.getText());
            cardList.add(card);
            clearCard();
        }
    }
    public class SaveMenuListener implements ActionListener{
         public void actionPerformed(ActionListener ev){
            
         }
    }

}

python网络爬虫笔记(九)的更多相关文章

  1. Python网络爬虫笔记(五):下载、分析京东P20销售数据

    (一)  分析网页 下载下面这个链接的销售数据 https://item.jd.com/6733026.html#comment 1.      翻页的时候,谷歌F12的Network页签可以看到下面 ...

  2. [Python]网络爬虫(九):百度贴吧的网络爬虫(v0.4)源码及解析

    转自:http://blog.csdn.net/pleasecallmewhy/article/details/8934726 百度贴吧的爬虫制作和糗百的爬虫制作原理基本相同,都是通过查看源码扣出关键 ...

  3. Python网络爬虫笔记(二):链接爬虫和下载限速

    (一)代码1(link_crawler()和get_links()实现链接爬虫) import urllib.request as ure import re import urllib.parse ...

  4. python网络爬虫笔记(八)

    一.pthon 序列化json格式 1.将python内置对象转换成json 模块,dumps()方法返回的是一个str,内容是标准的JSON,dump()方法可以直接吧JSON写入一个file-li ...

  5. python网络爬虫笔记(六)

    1.获取属性如果不存在就返回404,通过内置一系列函数,我们可以对任意python对象进行剖析,拿到其内部数据,但是要注意的是,只是在不知道对象信息的时候,我们可以获得对象的信息. 2.实例属性和类属 ...

  6. python网络爬虫笔记(五)

    一.python的类对象的继承 1.所有的父类都是object类,由于类可以起到模块的作用,因此,可以在创建实例的时候,巴西一些认为必须要绑定的属性填写上去,通过定义一个特殊的方法 __init__, ...

  7. python网络爬虫笔记(四)

    一.python中的高阶函数算法 1.sorted()函数的排序   sorted()函数是一个高阶函数,还可以接受一个key函数来实现自定义的函数排序,key指定的函数作用于每个序列元素上,并根据k ...

  8. python网络爬虫笔记(三)

    一.切片和迭代 1.列表生成式 2.生成器的generate,但是generate保存的是算法,所以可以迭代计算,没有必要,每次调用generate 二.iteration 循环 1.凡是作用于for ...

  9. python网络爬虫笔记(一)

    一.查询数据字典型数据 1.先说说dictionary查找和插入的速度极快,不会随着key的增加减慢速度,但是占用的内存大 2.list查找和插入的时间随着元素的增加而增加,但还是占用的空间小,内存浪 ...

随机推荐

  1. openstack Q版部署-----网络服务(neutron)安装部署(7)

    一.数据库配置(控制节点) 控制节点创建数据库: CREATE DATABASE neutron; GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'lo ...

  2. Kivy折腾笔记

    最近想用Python开发APP,选择kivy,记录过程 首先是源码安装,各种蛋疼的报错放弃了.cython高版本有问题. python3 -m pip install cython==0.23 pyt ...

  3. 【转】数据库介绍(MySQL安装 体系结构、基本管理)

    [转]数据库介绍(MySQL安装 体系结构.基本管理) 第1章 数据库介绍及mysql安装 1.1 数据库简介 数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据运行新 ...

  4. Git学习笔记01-安装Git

    学习的资料来自廖雪峰官方网站的Git教程,菜鸟教程的Git教程 Git是一个分布式版本控制工具,在windows上使用Git可以直接从官网下载,然后默认选项安装即可. 安装完成后,在开始菜单中找到找到 ...

  5. requests库入门04-http基本认证

    因为后续样例中GitHub都需要提供认证,所以先写关于基本认证的 http的请求中,有一些请求是需要通过授权认证之后才会响应,授权认证就是检查用户名和密码的过程.http有一个基本认证方式,在认证的过 ...

  6. 关于nginx服务器上传限制

    nginx的上传参数问题,需要特别注意client_max_body_size这个参数,否则会中断在nginx的请求中,在php中无法log到访问的.修改了php.ini文件如下:参数 设置 说明fi ...

  7. 微信小程序弹出层点击穿透问题

    问题描述:使用小程序的modal组件实现遮罩层效果时,会出现滚动穿透的问题,即遮罩层后面的页面依旧可以滚动. 解决方案: 给底层页面动态添加 position:fixed; 代码: wxml: < ...

  8. python操作三大主流数据库(3)python操作mysql③python操作mysql的orm工具sqlaichemy安装配置和使用

    python操作mysql③python操作mysql的orm工具sqlaichemy安装配置和使用 手册地址: http://docs.sqlalchemy.org/en/rel_1_1/orm/i ...

  9. https 对 json空对象解析的影响

    2017年11月24日09:56:01 记录一个问题: PHP返回json给APP(安卓, fastjson) 其中一个值是空对象  json_encode( [ 'aaa' => new st ...

  10. Go Rand小结

    对于Random的使用,在业务中使用频率是非常高的,本文就小结下常用的方法: 在Golang中,有两个包提供了rand,分别为 "math/rand" 和 "crypto ...