从web抓取信息——webbrowser

“Web 抓取”是一个术语,即利用程序下载并处理来自Web 的内容。

webbrowser:是Python自带的,打开浏览器获取指定页面。

webbrowser模块的open()函数可以启动一个新浏览器,打开指定的URL。在交互式环境中输入以下代码,Web 浏览器的选项卡将打开URL 'https://www.csdn.net/'

>>> import webbrowser
>>> webbrowser.open('https://www.csdn.net/')

项目:利用webbrowser 模块的mapIt.py

例如,将一些地址拷贝到剪贴板,并在高德地图上打开它的地图,这是很繁琐的事。你可以让这个任务减少几步,写一个简单的脚本,利用剪贴板中的内容在浏览器中自动加载地图。这样,你只要将地址拷贝到剪贴板,运行该脚本,地图就会加载。
你的程序需要做到:
• 从命令行参数或剪贴板中取得街道地址。
• 打开Web 浏览器,指向该地址的高德地图页面。
        这意味着代码需要做下列事情:
• 从sys.argv 读取命令行参数。 
• 读取剪贴板内容。
• 调用webbrowser.open()函数打开外部浏览器。

步骤1:弄清楚URL
比如:https://www.amap.com/search?query=汉口站,可以查询到汉口站的地图

步骤2:建立mapIt.py

这样当你从命令行运行它时,该脚本将使用命令行参数,而不是剪贴板。如果没有命令行参数,程序就知道要使用剪贴板的内容。

#!python3
import webbrowser,sys,pyperclip
if len(sys.argv)>1:
    address = ' '.join(sys.argv[1:])
else:
    address = pyperclip.paste()
webbrowser.open("https://www.amap.com/search?query="+address)

①所有Python 程序的第一行应该是#!行,它告诉计算机你想让Python 来执行这个程序。该行以#!开始,但剩下的内容取决于操作系统。

  • 在Windows 上,第一行是 #! python3。
  • 在OS X,第一行是 #! /usr/bin/env python3。
  • 在Linux 上,第一行是 #! /usr/bin/python3。

没有#!行,你也能从IDLE 运行Python 脚本,但从命令行运行它们就需要这一行。②需要导入webbrowser 模块,用于加载浏览器;导入sys 模块,用于读入可能的命令行参数。sys.argv 变量保存了程序的文件名和命令行参数的列表。如果这个列表中不只有文件名,那么len(sys.argv)的返回值就会大于1,这意味着确实提供了命令行参数。命令行参数通常用空格分隔,但在这个例子中,你希望将所有参数解释为一个字符串。因为sys.argv 是字符串的列表,所以你可以将它传递给join()方法,这将返回一个字符串。你不希望程序的名称出现在这个字符串中,所以不是使用sys.argv,而是使用sys.argv[1:],砍掉这个数,为此模块内部使用。sys.argv 是获取运行python文件的时候命令行参数,且以list形式存储参数,sys.argv[0] 代表当前module的名字。

join函数的用法Python join() 函数 连接字符串-CSDN博客

③如果没有命令行参数,程序将假定地址保存在剪贴板中。可以用pyperclip.paste()取得剪贴板的内容,并将它保存在名为address 的变量中。pyperclip 模块有 copy()和 paste()函数, 可以向计算机的剪贴板发送文本, 或从它接收文本。将程序的输出发送到剪贴板, 使它很容易粘贴到邮件、文字处理程序或其他软件中。 pyperclip 模块不是 Python 自带的,需要安装它。最后,启动外部浏览器访问高德地图的URL,调用webbrowser.open()。

步骤3:windows的.bat批处理文件运行Python脚本程序

批处理文件:顾名思义就是进行批量的处理。批处理文件是扩展名为·bat 或·cmd的文本文件,包含一条或多条命令,由DOS或Windows系统内嵌的命令解释器来解释运行。

批处理文件是无格式的文本文件。在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.exe按照该文件中各个命令出现的顺序来逐个运行它们。

@echo off
武汉站
F:  
cd F:\study\python
start python mapIt.py

执行该.bat文件,将会跳转到查询“武汉站”的页面。删去“武汉站”几个字,将会跳转到查询剪贴板内容的界面。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值