如何使用python将网页文本内容保存为文本文件

时间:2016-09-07 10:54:06

标签: python

我做了python脚本:

    from string import punctuation
    from collections import Counter
    import urllib
    from stripogram import html2text
    myurl = urllib.urlopen("https://www.google.co.in/?gfe_rd=cr&ei=v-PPV5aYHs6L8Qfwwrlg#q=samsung%20j7") 
    html_string = myurl.read()
    text = html2text( html_string )
    file = open("/home/nextremer/Final_CF/contentBased/contentCount/hi.txt", "w")
    file.write(text)
    file.close()

使用这个脚本我没有得到完美的输出只有一些HTML代码       

  • 我希望将所有网页文字内容保存在文本文件中       
  • 我使用了urllib2或bs4,但没有得到结果       
  • 我不希望输出为html结构。
  • 我想要来自网页

    的所有文字数据
  • 3 个答案:

    答案 0 :(得分:1)

    “网页文字”是什么意思? 看来你不想要完整的HTML文件。如果您只是想要在浏览器中看到的文本,那就不太容易解决,因为HTML文档的解析可能非常复杂,尤其是对于富含JavaScript的页面。 首先评估“<”之间是否有字符串和“>”是一个常规标记,包括分析由JavaScript行为改变的CSS属性。

    这就是人们为网页浏览器编写非常大而复杂的渲染引擎的原因。

    答案 1 :(得分:0)

     import urllib
    
     urllib.urlretrieve("http://www.example.com/test.html", "test.txt")
    

    答案 2 :(得分:0)

    您不需要编写任何硬算法来从搜索结果中提取数据。谷歌有一个API可以做到这一点 这是一个例子:
    https://github.com/google/google-api-python-client/blob/master/samples/customsearch/main.py
    但要使用它,首先你必须在谷歌注册API密钥 您可以在此处找到所有信息:
    https://developers.google.com/api-client-library/python/start/get_started