• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

python 爬取指定url的ICP备案信息

python 搞代码 4年前 (2022-01-09) 41次浏览 已收录 0个评论
#coding=gbk import osimport sysimport reimport timeimport urllib2   def perror_and_exit(message, status = -1):    sys.stderr.write(message + '\n')    sys.exit(status)   def get_text_from_html_tag(html):    pattern_text =  re.compile(r">.*?    return pattern_text.findall(html)[0][1:-2].strip()   def parse_alexa(url):    url_alexa = "http://icp.alexa.cn/index.php?q=%s" % url    print url_alexa    #handle exception     times = 0    while times ") + 1:]    company_website_name = get_text_from_html_tag(match_td[4])    company_website_home_page = get_text_from_html_tag(match_td[5])    company_website_home_page = company_website_home_page[company_website_home_page.rfind(">") + 1:]    company_detail_url = get_text_from_html_tag(match_td[7])    pattern_href = re.compile(r"href=\".*?\"", re.DOTALL | re.MULTILINE)    match_href = pattern_href.findall(company_detail_url)    if len(match_href) == 0:        company_detail_url = ""    else:        company_detail_url = match_href[0][len("href=\""):-1]    return [url, company_name, company_properties, company_icp, company_website_name, company_website_home_page, company_detail_url]    pass   if __name__ == "__main__":    fw = file("out.txt", "w")    for url in sys.stdin:        fw.write("\t".join(parse_alexa(url)) + "\n")  #coding=gbkimport osimport sysimport reimport timeimport urllib2  def perror_and_exit(message, status = -1):    sys.stderr.write(message + '\n')    sys.exit(status)  def get_text_from_html_tag(html):    pattern_text =  re.compile(r">.*?    return pattern_text.findall(html)[0][1:-2].strip()  def parse_alexa(url):    url_alexa = "http://icp.alexa.cn/index.php?q=%s" % url    print url_alexa    #handle exception    times = 0    while times ") + 1:]    company_website_name = get_text_from_html_tag(match_td[4])    company_website_home_page = get_text_from_html_tag(match_td[5])    company_website_home_page = company_website_home_page[company_website_home_page.rfind(">") + 1:]    company_detail_url = get_text_from_html_tag(match_td[7])    pattern_href = re.compile(r"href=\".*?\"", re.DOTALL | re.MULTILINE)    match_href = pattern_href.findall(company_detail_url)    if len(match_href) == 0:        company_detail_url = ""    else:        company_detail_url = match_href[0][len("href=\""):-1]    return [url, company_name, company_properties, company_icp, company_website_name, company_website_home_page, company_detail_url]    pass  if __name__ == "__main__":    fw = file("out.txt", "w")    for url in sys.stdin:        fw.write("\t".jo<b style="color:transparent">来&源gao@dai!ma.com搞$代^码%网</b>in(parse_alexa(url)) + "\n")[python] view plaincopyprint? time.sleep(2)    pass   time.sleep(2)    pass

每次抓取都会sleep 2s,防止ip被封,实际上即使sleep了IP过一段时间还是会被封

由于是结构化抓取,当网站格式变化此程序将无法使用


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:python 爬取指定url的ICP备案信息
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址