python網路爬蟲筆記(九)

來源:互聯網
上載者:User

標籤:出錯   textarea   UI   efault   3.0   line   response   連結地址   運行   

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網路爬蟲筆記(九)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.