• 回答数

    5

  • 浏览数

    153

火山红虎
首页 > 职称论文 > python知网论文数据爬取

5个回答 默认排序
  • 默认排序
  • 按时间排序

yanran8385

已采纳

#!/usr/bin/env python # -*- coding: utf-8 -*- # @Author: Administrator # @Date: 2015-10-31 15:45:27 # @Last Modified by: Administrator # @Last Modified time: 2015-11-23 16:57:31 import requests import sys import json import re reload(sys) ('utf-8') #获取到匹配字符的字符串 def find(pattern,test): finder = (pattern, test) start = () end = () return test[start:end-1] cookies = { '_ga':'', '_za':'8d570b05-b0b1-4c96-a441-faddff34', 'q_c1':'23ddd234234', '_xsrf':'234id':'"ZTE3NWY2ZTsdfsdfsdfWM2YzYxZmE=|1446435757|15fef3b84e044c122ee0fe8959e606827d333134"', 'z_c0':'"QUFBQXhWNGZsdfsdRvWGxaeVRDMDRRVDJmSzJFN1JLVUJUT1VYaEtZYS13PT0=|14464e234767|57db366f67cc107a05f1dc8237af24b865573cbe5"', '__utmt':'1', '__utma':'', '__utmb':'', '__utmc':'51123390', '__utmz':'|utmcgcn=(referral)|utmcmd=referral|utmcct=/', '__utmv':'|2=registration_date=2028=1^3=entry_date=201330318=1'} headers = {'user-agent': 'Mozilla/ (Windows NT ; WOW64) AppleWebKit/ (KHTML, like Gecko) Chrome/ Safari/', 'referer':'', 'host':'','Origin':'', 'Content-Type':'application/x-www-form-urlencoded; charset=UTF-8', 'Connection':'keep-alive','X-Requested-With':'XMLHttpRequest','Content-Length':'81', 'Accept-Encoding':'gzip,deflate','Accept-Language':'zh-CN,zh;q=','Connection':'keep-alive' } #多次访问之后,其实一加载时加载20个问题,具体参数传输就是offset,以20递增 dicc = {"offset":60} n=20 b=0 # 与爬取图片相同的是,往下拉的时候也会发送http请求返回json数据,但是不同的是,像模拟登录首页不同的是除了 # 发送form表单的那些东西后,知乎是拒绝了我的请求了,刚开始以为是headers上的拦截,往headers添加浏览器 # 访问是的headers那些信息添加上,发现还是拒绝访问。 #想了一下,应该是cookie原因。这个加载的请求和模拟登录首页不同 #所以补上其他的cookies信息,再次请求,请求成功。 for x in xrange(20,460,20): n = n+20 b = b+20 dicc['offset'] = x formdata = {'method':'next','params':'{"offset":20}','_xsrf':'20770d88051f0f45e941570645f5e2e6'} #传输需要json串,和python的字典是有区别的,需要转换 formdata['params'] = (dicc) # print (dicc) # print dicc circle = ("", cookies=cookies,data=formdata,headers=headers) #response内容 其实爬过一次之后就大同小异了。 都是 #问题返回的json串格式 # {"r":0, # "msg": ["

\n # \n
205K<\/div>\n #
\u6d4f\u89c8<\/div>\n # <\/span>\n
\n #

\n # # \u4ec0\u4e48\u4fc3\u4f7f\u4f60\u8d70\u4e0a\u72ec\u7acb\u5f00\u53d1\u8005\u4e4b\u8def\uff1f<\/a>\n # <\/h2>\n
\n # <\/i>\u53d6\u6d88\u5173\u6ce8<\/a>\n•<\/span>\n63 \u4e2a\u56de\u7b54\n•<\/span>\n3589 \u4eba\u5173\u6ce8\n<\/div>\n<\/div>\n<\/div>", # "
\n # \n #
157K<\/div>\n #
\u6d4f\u89c8<\/div>\n # <\/span>\n
\n #

\n # # \u672c\u79d1\u6e23\u6821\u7684\u5b66\u751f\u5982\u4f55\u8fdb\u5165\u7f8e\u5e1d\u725b\u6821\u8bfbPhD\uff1f<\/a>\n # <\/h2>\n

qianxiao1985

Python自动化可以实现,有偿服务

137 评论

碧落的海

返照入闾巷,

344 评论

小胖子老头

模拟登录很多网站,比如知乎、微博、豆瓣,都需要登录之后,才能浏览某些内容。所以想要爬取这类网站,必须先模拟登录。比较简单的方式是利用这个网站的 cookie。cookie 相当于是一个密码箱,里面储存了用户在该网站的基本信息。在一次登录之后,网站会记住你的信息,把它放到cookie里,方便下次自动登录。所以,要爬取这类网站的策略是:先进行一次手动登录,获取cookie,然后再次登录时,调用上一次登录得到的cookie,实现自动登录。动态爬取在爬取知乎某个问题的时候,需要将滑动鼠标滚轮到底部,以显示新的回答。静态的爬取方法无法做到这一点,可以引入selenium库来解决这一问题。selenium库模拟人浏览网站、进行操作,简单易懂。

178 评论

做梦的燕子

可以先利用搜索引擎学习。简单爬虫不难,无非发起http访问,取得网页的源代码文本,从源代码文本中抽取信息。首先要自己会写代码。学习爬虫可以从下面一些知识点入手学习。1、http相关知识。2、浏览器拦截、抓包。3、python2 中编码知识,python3 中bytes 和str类型转换。4、抓取javascript 动态生成的内容。5、模拟post、get,header等6、cookie处理,登录。7、代理访问。8、多线程访问、python 3 asyncio 异步。9、正则表达式、xpath等。。。。10、scrapy requests等第三方库的使用。

311 评论

相关问答

  • python数据分析论文格式

    主要是两点或者三点第一个是爬虫的技术框架,这个比较好,理解了第二个是医疗数据内容以及可视化选择,就比如说医疗数据,你是用饼图还是柱状图去反映一些病情然后写一些代

    嗯哼,嗯哼 4人参与回答 2023-12-11
  • python论文爬

    为了做到更优雅,这次抛弃了urllib库的引用,使用requests和beautifulsoup搭配的方式进行 首先构建一个请求并且响应它然后呢到上找一篇文

    轻舞飞扬舞翩跹 4人参与回答 2023-12-07
  • 爬取中国知网论文数据

    知网中的外文文献大多都是摘要,知网和外文文献机构只是合作关系对外文文献只收录了摘要,并没有把全文收录到知网中。所以,下载外文文献最有效的方法还是去文献来源数据库

    風雨飘零 3人参与回答 2023-12-11
  • 合法获取知网论文数据库信息

    上图是知网查重系统的检测范围,也就是俗称的查重数据库,从中可以看到大部分是知网自己收录的文献,文章资料,比如硕博论文,学术期刊,会议,报纸,专利,图书资源等,同

    爱思晴儿 7人参与回答 2023-12-09
  • 数据爬取毕业论文

    要看你什么论文了,而且还要根据你自己论文的主题和对象以及论文的信息来看的,找的话很难找到51调查网上可以帮你做你自己想要的数据,然后你把调查什么方面的东西和信息

    木糖不纯 7人参与回答 2023-12-06