【发布时间】:2021-11-02 14:47:16
【问题描述】:
所以我的问题是我并不真正喜欢编程,我唯一做的就是制作网站并出售它们。
我学了一点 Python,但学的不多,这就是我的问题所在。我开始编写一个程序,因为我想在有用的时候学习这门语言......所以正如我早些时候所说,我在那里销售网站是我国的一个网站,几乎每家公司都在上面列出。我想要一个 scraper 来查找网站上的所有号码。
目前它只适用于第一个数字,但每页只列出十个,这是我的代码:
从请求导入获取
定义开始():
keyword = input("Suchbegriff: ")
URL = "https://www.herold.at/gelbe-seiten/" + keyword + "/"
print("Targing... : " + URL)
data = get(URL)
print(data.text[:100000000000000000000000])
tel = data.text.find('"tel:')
print(tel)
print(data.text[tel:tel + 19])
开始()
目前,如果我输入像“friseur”这样的分支利基名称,我只会得到第一个数字作为输出:
"39820 "电话:+4315124367" 电话"
我怎样才能让爬虫继续并获取其他 9 个。
已经感谢您的回答!
【问题讨论】:
-
find 是字符串类的一个方法,它只返回您要查找的内容的第一次出现
-
那么我该怎么办,它会捕获所有 10 个?
-
可能像
for line in data.text.split('\n'): if line.find('"tel:') > -1: ...这样的smt,否则您可以使用bs4之类的模块来废弃页面的内容或使用正则表达式 -
好的,谢谢,我试试bs4
-
请澄清您的具体问题或提供其他详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。
标签: python string search web-crawler