会员可以在此提问,百战程序员老师有问必答
对大家有帮助的问答会被标记为“推荐”
看完课程过来浏览一下别人提的问题,会帮你学得更全面
截止目前,同学们一共提了 133322个问题
WEB前端全系列/第十四阶段:微信小程序/实战_百战商城 25293楼

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
import java.util.Scanner;

/**
 * 发送给对方消息的线程类
 */
class ClientSend extends Thread{
    private Socket socket;
    public ClientSend(Socket socket){
        this.socket = socket;
    }
    @Override
    public void run() {
        this.sendMsg();
    }
    /**
     * 发送给对方消息的方法
     */
    private void sendMsg(){
        Scanner scanner = null;
        PrintWriter pw = null;
        try {
            //创建scanner对象
            scanner = new Scanner(System.in);
            //创建向对方发送消息的流对象
            pw = new PrintWriter(this.socket.getOutputStream());
            while (true){
                String msg = scanner.nextLine();
                pw.println(msg);
                pw.flush();
            }
        }catch (Exception e){
            e.printStackTrace();
        }finally {
            if (pw != null){
                pw.close();
            }
            if (scanner != null){
                scanner.close();
            }
            if (this.socket != null){
                try {
                    this.socket.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

/**
 * 接收对方消息的线程类
 */
class ClientReceive extends Thread{
    private Socket socket;
    public ClientReceive(Socket socket){
        this.socket = socket;
    }
    @Override
    public void run() {
        this.receiveMsg();
    }
    /**
     * 接收对方消息的方法
     */
    private void receiveMsg(){
        BufferedReader br = null;
        try {
            //创建接受信息的流对象
            br = new BufferedReader(new InputStreamReader(this.socket.getInputStream()));
            while (true){
                String msg = br.readLine();
                System.out.println("对方说: "+msg);
            }
        }catch (Exception e){
            e.printStackTrace();
        }finally {
            if (br != null){
                try {
                    br.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}
public class ChatSocketClient {
    public static void main(String[] args) {
        try {
             Socket socket = new Socket("192.168.1.41",8888);
             System.out.println("连接成功");
             new ClientSend(socket).start();
             new ClientReceive(socket).start();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;

/**
 * 发送给对方信息的线程类
 */
class ServerSend extends Thread{
    private Socket socket;
    public ServerSend(Socket socket){
        this.socket = socket;
    }
    @Override
    public void run() {
        this.sendMsg();
    }
    /**
     * 发送给对方消息的方法
     */
    private void sendMsg(){
        Scanner scanner = null;
        PrintWriter pw = null;
        try {
            //创建scanner对象
            scanner = new Scanner(System.in);
            //创建向对方发送消息的流对象
            pw = new PrintWriter(this.socket.getOutputStream());
            while (true){
                String msg = scanner.nextLine();
                pw.println(msg);
                pw.flush();
            }
        }catch (Exception e){
            e.printStackTrace();
        }finally {
            if (pw != null){
                pw.close();
            }
            if (scanner != null){
                scanner.close();
            }
            if (this.socket != null){
                try {
                    this.socket.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

/**
 * 接收对方消息的线程类
 */
class ServerReceive extends Thread{
    private Socket socket;
    public ServerReceive(Socket socket){
        this.socket = socket;
    }
    @Override
    public void run() {
        this.receiveMsg();
    }
    /**
     * 接收对方消息的方法
     */
    private void receiveMsg(){
        BufferedReader br = null;
        try {
            //创建接受信息的流对象
            br = new BufferedReader(new InputStreamReader(this.socket.getInputStream()));
            while (true){
                String msg = br.readLine();
                System.out.println("对方说: "+msg);
            }
        }catch (Exception e){
            e.printStackTrace();
        }finally {
            if (br != null){
                try {
                    br.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}
public class ChatSocketServer {
    public static void main(String[] args) {
        ServerSocket serverSocket = null;
        try {
            serverSocket = new ServerSocket(8888);
            System.out.println("服务端已启动,等待连接");
            Socket socket = new Socket();
            serverSocket.accept();
            System.out.println("连接成功");
            new ServerSend(socket).start();
            new ServerReceive(socket).start();
        }catch (Exception e){
            e.printStackTrace();
        }finally {
            if (serverSocket != null){
                try {
                    serverSocket.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}
屏幕截图(14).png
image.png

老师,这啥情况,不是连接成功了吗?

JAVA 全系列/第二阶段:JAVA 基础深化和提高/网络编程(旧) 25294楼
JAVA 全系列/第二阶段:JAVA 基础深化和提高/网络编程(旧) 25295楼
JAVA 全系列/第四阶段:数据库与AI协同技术实战/SQL 语言 25296楼
Python 全系列/第二阶段:Python 深入与提高/GUI编程(隐藏) 25298楼

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Document</title>

</head>

<body>

    <table border="1" width="800" height="100" align="center" bordercolor="red" cellspacing="0">  

        <tr bgcolor="orange" align="center">

            <td width="150">片名</td>

            <td>日期</td>

            <td>时间</td>

            <td>电影院</td>

            <td>票价</td>

        </tr>

        <tr align="center">

            <td rowspan="2">【国】卡拉是条狗</td>

            <td rowspan="3" align="center" height="50">3月7号</td>

            <td rowspan="6" align="center">7:30</td>

            <td rowspan="2">红楼电影院</td>

            <td>小厅:40</td>

        </tr>

        <tr align="center">

          

            

            

     

          

            <td>大厅:50</td>

           

        </tr>

        <tr align="center">

            <td>【美】碟海计中计</td>


          

        

            <td>花市电影院</td>

            <td align="center">30</td>

        </tr>

        <tr align="center">

            <td>【美】正义守望者</td>

            <td>3月8日</td>

          

           

            <td rowspan="3">华星国际影院</td>

            <td>小厅:35</td>

        </tr>

        <tr align="center">

            <td>【国】周渔的火车</td>

            <td>3月10日</td>

     

          

        

            <td>大厅:50</td>

        </tr>

        <tr align="center">

            <td>【美】冰川时代</td>

            <td>3月11日</td>

       

            

            <td>情侣座:80</td>

        </tr>

    </table>

</body>

</html>

image.png

WEB前端全系列/第一阶段:HTML5+CSS3模块/HTML5基础元素 25300楼

from bs4 import BeautifulSoup
import bs4
import requests


# 获取网页内容

def get_html_text(url):
    try:
        head = {'User-Agent': 'Chrome/10'}
        r = requests.get(url, headers=head)
        r.raise_for_status
        r.encoding = r.apparent_encoding
        return r.text
    except:
        return ''


# 解析网页内容,保存到列表中

def save_to_list(lst, html):
    soup = BeautifulSoup(html, 'html.parser')
    for tr in soup('tbody')[0].children:
       if isinstance(tr,bs4.element.Tag):
           tds=tr('td')
           lst.append([tds[0].text, tds[1].text, tds[2].text, tds[3].text])


# 打印排名内容

def print_info(lst, start_num,end_num):
    for i in range(start_num,end_num+1):
        u = lst[i]
        # print(ulist)
        print("{0:^15}{1:^15}{2:^15}{3:^15}".format(u[0],u[1],u[2],u[3]))
def main():
    url = 'https://www.dxsbb.com/news/46725.html'
    lst = []
    html = get_html_text(url)
    save_to_list(lst,html)
    print_info(lst,0,100)


if __name__ == '__main__':
    main()
    
 老师,这是一个获取大学排名的定向爬虫,有个问题,就是输出来的内容不对齐,请问怎么处理?如下所示请问怎么处理?

输入内容如下:

 排名             名称             所在地           生源质量分     

       1            清华大学            北京             100      

       2            北京大学            北京            96.4      

       3          中国科学技术大学          安徽            92.1      

       4            复旦大学            上海            91.5      

       5           中国人民大学           北京            90.8      

       6           上海交通大学           上海            90.5      

       7            南京大学            江苏            88.4      

       8            同济大学            上海             87       

       9            浙江大学            浙江            86.3      

      10           上海财经大学           上海            86.2      

      11            南开大学            天津            85.9      

      12          北京航空航天大学          北京            85.4      

      13           中央财经大学           北京            85.2      

      14           北京师范大学           北京            85.1      

      15            武汉大学            湖北            84.4      

      16          对外经济贸易大学          北京            84.2      

      17           西安交通大学           陕西            83.6      

      18            天津大学            天津            82.5      

      19           华中科技大学           湖北            82.4      

      20           北京理工大学           北京            82.1      

      21            东南大学            江苏            81.8      

      22           北京外国语大学          北京            81.8      

      23            中山大学            广东            81.1      

      24           中国政法大学           北京            80.8      

      25           华东师范大学           上海            79.4      

      26           哈尔滨工业大学          黑龙江           78.2      

      27           北京邮电大学           北京            78.2      

      28            厦门大学            福建            77.9      

      29           上海外国语大学          上海            77.5      

      30           西北工业大学           陕西            77.1      

      31           西南财经大学           四川            76.6      

      32            中南大学            湖南             76       

      33           大连理工大学           辽宁            75.8      

      34           中国传媒大学           北京            75.8      

      35            四川大学            四川            75.7      

      36           电子科技大学           四川            75.4      

      37          中南财经政法大学          湖北            75.1      

      38           华南理工大学           广东            74.8      

      39            吉林大学            吉林            74.4      

      40          南京航空航天大学          江苏            74.4      

      41            湖南大学            湖南            74.2      

      42            重庆大学            重庆            73.8      

      43           北京科技大学           北京            73.8      

      44           北京交通大学           北京            73.5      

      45            山东大学            山东            73.4      

      46           华东理工大学           上海            72.9      

      47          西安电子科技大学          陕西            72.2      

      48           天津医科大学           天津            72.1      

      49           南京理工大学           江苏            71.8      

      50           中国农业大学           北京             71       

      51           华中师范大学           湖北            70.2      

      52           中国海洋大学           山东             70       

      53           哈尔滨工程大学          黑龙江           69.8      

      54           中央民族大学           北京            69.8      

      55           华北电力大学           北京            69.7      

      56           北京中医药大学          北京            69.7      

      57            暨南大学            广东            69.6      

      58            苏州大学            江苏            69.5      

      59           武汉理工大学           湖北            69.4      

      60            东北大学            辽宁             69       

      61            兰州大学            甘肃            68.7      

      62           中国药科大学           江苏            68.4      

      63            东华大学            上海            68.2      

      64            河海大学            江苏            68.1      

      65           北京林业大学           北京             68       

      66           河北工业大学           河北            67.9      

      67           北京工业大学           北京            67.3      

      68            江南大学            江苏            67.2      

      69           北京化工大学           北京            67.1      

      70           西南交通大学           四川            66.8      

      71            上海大学            上海            66.7      

      72           南京师范大学           江苏            66.4      

      73         中国地质大学(武汉)         湖北            65.3      

      74         中国地质大学(北京)         北京            65.1      

      75            西北大学            陕西            64.6      

      76           东北师范大学           吉林            64.5      

      77            长安大学            陕西            64.4      

      78         中国矿业大学(北京)         北京             64       

      79           华中农业大学           湖北            63.7      

      80           合肥工业大学           安徽            63.7      

      81            广西大学            广西            63.5      

      82         中国石油大学(华东)         山东            63.3      

      83           陕西师范大学           陕西            63.3      

      84           南京农业大学           江苏             63       

      85           湖南师范大学           湖南            62.8      

      86            福州大学            福建            62.6      

      87           大连海事大学           辽宁            62.3      

      88          西北农林科技大学          陕西            62.1      

      89            西南大学            重庆            61.1      

      90           中国矿业大学           江苏             61       

      91            云南大学            云南            60.3      

      92           太原理工大学           山西            60.3      

      93           华南师范大学           广东             60       

      94           北京体育大学           北京             60       

      95         中国石油大学(北京)         北京            59.5      

      96            安徽大学            安徽            59.2      

      97           东北林业大学           黑龙江           58.2      

      98           东北农业大学           黑龙江            58       

      99            辽宁大学            辽宁            57.9      

      100           南昌大学            江西            52.4      


Python 全系列/第十五阶段:Python 爬虫开发/爬虫反反爬- 25302楼
JAVA 全系列/第二阶段:JAVA 基础深化和提高/容器 25303楼
JAVA 全系列/第一阶段:AI驱动的JAVA编程/控制语句、方法、递归算法 25305楼

课程分类

百战程序员微信公众号

百战程序员微信小程序

©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园
网站维护:百战汇智(北京)科技有限公司
京公网安备 11011402011233号    京ICP备18060230号-3    营业执照    经营许可证:京B2-20212637