前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >利用python3模拟访问网站

利用python3模拟访问网站

作者头像
py3study
发布2020-01-13 01:23:35
7050
发布2020-01-13 01:23:35
举报
文章被收录于专栏:python3python3

功能: 利用python代码来获取我们访问网页后网页返回给我们的信息,将返回的内容写入到文件中.我们这里就拿百度图库来做个例子 需求: 使用socket模块

代码如下:

代码语言:javascript
复制
import socket

def main():
    # 创建套接字
    tcp_socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    # 连接baidu
    tcp_socket.connect(("image.baidu.com",80))
    # 模拟请求行
    request_line ="GET / HTTP/1.1\r\n"

    request_headers = "Host: image.baidu.com\r\n"

    request_headers += "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36\r\n\r\n"
    # 模拟请求头
    request = request_line + request_headers
    # 将模拟请求发送给baidu
    tcp_socket.send(request.encode())
    # 接收baidu的响应 
    data = tcp_socket.recv(10240)
    # 切片取出baidu响应的内容,如果不切片内容中将包含响应报文
    data = data.decode()[data.decode().find("\r\n\r\n")+4:]

    # 打开文件
    new = open("newfile.html","w")
    # 将切片后的字符串写入
    new.write(data)
    # 关闭文件
    new.close()




if __name__ == "__main__":
    main()
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-08-16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档