从pag中删除特定元素

2024-10-05 11:21:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我是python的新手,我正在研究使用scrapy来刮取页面上的特定元素。你知道吗

我需要取会员页面上列出的姓名和电话号码。你知道吗

这个脚本将获取整个页面,我可以添加/更改什么来只获取那些特定的元素?你知道吗

    import scrapy

class DmozSpider(scrapy.Spider):
    name = "dmoz"
    allowed_domains = ["fali.org"]
    start_urls = [
        "http://www.fali.org/members/",
    ]

    def parse(self, response):
        filename = response.url.split("/?id=")[-2] + '%random%'
        with open(filename, 'wb') as f:
            f.write(response.body)

Tags: orgimport脚本元素response电话号码页面filename
2条回答

shark3y声明in his answerstart_url会被重定向到主页面。你知道吗

如果您阅读了文档,您应该知道Scrapy是从start_url开始刮的,它不知道您想要实现什么。你知道吗

在您的例子中,您需要从http://www.fali.org/search/newsearch.asp开始,它返回所有成员的搜索结果。现在您可以设置一个Rule来遍历结果列表,并为找到的每个成员调用一个parse_detail方法,并通过结果分页跟踪链接。你知道吗

parse_detail方法中,您可以遍历成员的站点并提取所需的所有信息。我猜你不需要整个网站,因为它会在你的计算机上生成大量数据,最后你必须解析它。你知道吗

我看不到页面: http://www.fali.org/members/

相反,它会重定向到主页。你知道吗

这使得无法给出具体细节。你知道吗

举个例子:

    article_title = response.xpath("//td[@id='HpWelcome']/h2/text()").extract()

从他们的研究中解析出“佛罗里达持照调查者协会(FALI)”主页。你呢可以获得浏览器插件来帮助您了解XPath。chrome上的XPath助手使它变得简单。你知道吗

也就是说,浏览上面发布的教程。因为你会有更多的问题,我敢肯定,像这样宽泛的问题在堆栈溢出上不会被很好地接受。你知道吗

相关问题 更多 >

    热门问题