📅  最后修改于: 2023-12-03 15:22:02.228000             🧑  作者: Mango
在某些特定的场景下,我们需要从网页中抓取特定的电话号码。下面将介绍如何使用 Python 程序来实现该功能。
首先,我们需要使用 Python 的 requests 库来访问目标网页。我们可以使用以下代码来实现:
import requests
url = "https://www.example.com"
response = requests.get(url)
其中,url
为目标网页的链接,response
为访问该网页后得到的响应对象。可以通过打印 response.text
来查看响应的内容。
接下来,我们需要使用正则表达式来从网页中匹配电话号码。以中国手机号为例,其格式为 11 位纯数字,可以使用以下正则表达式进行匹配:
import re
pattern = re.compile(r'1[3-9]\d{9}')
phone_numbers = pattern.findall(response.text)
其中,pattern
是定义的匹配模式,findall
函数可以找到所有与该正则表达式匹配的字符串。我们可以将匹配到的电话号码存储在 phone_numbers
列表中。
下面是一个完整的代码示例,可以从指定网页中抓取所有的电话号码:
import requests
import re
url = "https://www.example.com"
response = requests.get(url)
pattern = re.compile(r'1[3-9]\d{9}')
phone_numbers = pattern.findall(response.text)
for phone_number in phone_numbers:
print(phone_number)
该代码将获取 https://www.example.com
中所有的中国手机号,并将其按顺序输出。
参考文献:
[1] Python 官方文档:https://docs.python.org/zh-cn/3.9/library/re.html
[2] requests 官方文档:https://docs.python-requests.org/en/master/