美文网首页
来一次完整的爬虫

来一次完整的爬虫

作者: dec0de丶bcd385丶 | 来源:发表于2018-09-08 22:46 被阅读0次

模拟登陆网站需要的库是

request

重点内容是正则表达式

pattern =re.compile(r'{.*?}')
listlist=pattern.findall(findok.group())

还有eval函数也是很重要的。

aa= [eval(x) for x in listlist]

第一步设定好网址,并且模拟登陆,保存session。

cs_url  = 'http://网址'

    my_headers = {
        'User-Agent' : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.116 Safari/537.36',
        'Accept' : 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
        'Accept-Encoding' : 'gzip',
        'Accept-Language' : 'zh-CN,zh;q=0.8,en;q=0.6,zh-TW;q=0.4'
    }
    sss     = requests.Session()
    r       = sss.get(cs_url, headers = my_headers)

获取跳转的网址内容

cs_url  = 'http://网址'
    r       = sss.post(cs_url, headers = my_headers)

把post返回内容正常解码

    a_str=r.text

搜索处理的代码块

xa_str=a_str[a_str.find(' '):a_str.find(' ')]

按照正则表达式和eval函数把代码块变成一个列表。
连接所有的列表。 all_list.extend(xueyuan_list)

    all_list.extend(xueyuan_list)
    all_list.extend(daijiao_list)
    all_list.extend(jiaomi_list)
    all_list.extend(zhuren_list)

生成序号,迭代列表的序号来生产sql的自动序号,不然sql没有自动序号不能恢复,这是一个bug啊。

    zhongjian = [str(index+1) + ",'"+x[0]+"','" +x[1] +"','" +x[2] +"'" for index,x in enumerate(all_list)]

用join连接字符串。

zhongzhi = '),('.join(zhongjian)

最后收尾写入文件。

    with codecs.open('zyys.sql','w','utf-8') as f2:
        f2.write(tou + zhongzhi + wei)

    print ('OK')

再上传到网站就可以肋,发现数据库更新后网站内容也更新了。而不是文件更新后需要刷新网站,只更新数据库可以省一个刷新网站的步骤。
这样就完成了所有任务。
做起来难的是登录网站,之前不会模拟登录,尝试跳转网站废了很多时间。今天却在response上面没整清楚,其实返回的内容用
.text处理后就自动解决中文问题了,而且还是utf-8的中文,更适合处理了。找到适合的正则表达式,用字符串截取也可以,看是不是唯一,是不是匹配下一步处理。

相关文章

  • 来一次完整的爬虫

    模拟登陆网站需要的库是 重点内容是正则表达式 还有eval函数也是很重要的。 第一步设定好网址,并且模拟登陆,保存...

  • Scrapy爬虫(1)-知乎

    Scrapy爬虫(1)-知乎 我的博客第一次用Scrap创建的爬虫,详细记录下完整代码请访问这里,不过代码可能有所...

  • 「爬虫」14爬虫之scrapy爬虫项目和xpath表达式

    1.scrapy爬虫项目 (1)一个完整的爬虫项目包括以下爬虫文件: (2)将所有文件封装形成scrapy框架: ...

  • Python爬虫基础教程(三)

    九、多线程爬虫 9.1利用多线程爬虫爬取糗事百科的资源: 十、爬虫代码总结: 要实现一个完整的爬虫,无外乎4...

  • 爬虫小测试(。ò ∀ ó。)

    第一次接触python,觉得爬虫很好玩,爬虫就是抓取网页信息,至于要爬下来什么就是你来定咯 爬虫前部分还是不难的 ...

  • Python-入门的第一个爬虫例子

    前言: 此文为大家入门爬虫来做一次简单的例子,让大家更直观的来了解爬虫。本次我们利用 Requests 和正则表达...

  • 你要的异步爬虫,这不来了嘛

    爬虫程序的构成与完整链条 大家好,我是啃书君。 想必大家看了那么多的爬虫教程,都很希望知道以后的工作主要用爬虫做些...

  • PandaTV爬取主播人气并排序

    很早前,第一次爬虫,就用的re加urllib原生爬虫。这次重新来爬取一次PandaTV主播人气排名,来练一下手。毕...

  • Python 网络爬虫(一)

    网络爬虫的基本介绍 学习爬虫,我想主要从以下几个方面来切入 -爬虫的原理? -爬虫的作用? -爬虫的实现? -爬虫...

  • 完整的go爬虫项目

    项目地址 https://github.com/monomania/poem-parent 项目介绍 技术选型 x...

网友评论

      本文标题:来一次完整的爬虫

      本文链接:https://www.haomeiwen.com/subject/isblgftx.html