一种绕过约束下载论文的思路

访客6年前关于黑客接单877

注:本文下面的内容仅评论绕过思路,作为技能交流之用。咱们下载论文仍是应该经过正规渠道,付费下载,尊重各位站长的劳动成果。灵敏图片和代码中触及站点的内容均已打码。
有时候要研讨技能,咱们也需求下载一些论文来看看的。一些论文站点,尽管供给预览功用,可是下载却是收费的。
举个比如,如下站点:

当咱们点击“赞同并开端全文预览”按钮时,是有一个弹出窗口来预览论文的。

可是当咱们点击“下载”按钮时,却提示需求收费。

一方面它单篇论文的收费真实是挺贵的;别的一方面,咱们或许更倾向于把论文批量下载到本地,比及有时间时渐渐读完。这该怎么办呢?
咱们F12看看预览页面的内容:

能够明晰的看到,id=”pdf”的div下的每个子节点div对应着论文的每一页,而每一个子div中包括的img标签对应的图片则是每一页的内容。咱们将img标签的src中的链接仿制出来,粘贴在浏览器的新页签中,其实是能够看到本页论文内容,而右键“保存图片”是能够将此页论文保存到本地的。

以上便是手动绕过约束下载论文的思路。可是有的论文页数真实太多,手动逐一仿制链接下载真实有些功率低下,所以咱们能够写个脚原本提高功率。
#coding:utf-8
import traceback
import urllib2
import urllib
import sys
import Queue
import os
import time
from bs4 import BeautifulSoup
from selenium import webdriver
driver = webdriver.Firefox()
driver.implicitly_wait(30)
host = "此处打码"
searchurl = "https://" + host + "/index.php?m=Search&a=index"
dstpath = "h:/downloadpdf"
download_queue = Queue.Queue()
reload(sys)
sys.setdefaultencoding("utf-8")
class UnicodeStreamFilter: 
  def __init__(self, target): 
      self.target = target 
      self.encoding = 'utf-8' 
      self.errors = 'replace' 
      self.encode_to = self.target.encoding 
  def write(self, s): 
      if type(s) == str: 
          s = s.decode("utf-8") 
      s = s.encode(self.encode_to, self.errors).decode(self.encode_to) 
      self.target.write(s) 
       
if sys.stdout.encoding == 'cp936': 
  sys.stdout = UnicodeStreamFilter(sys.stdout)
def get_search_result(keywords):
  data = {"q":keywords}
  headers = {"cookie":"拜访论文站点时f12看到的cookie填入此处,此处打码"}
  req = urllib2.Request(url=searchurl,data=urllib.urlencode(data),headers=headers)
  res = urllib2.urlopen(req)
  content = res.read()
  soup = BeautifulSoup(content, features="lxml")
  divlist = soup.find_all(class_="item-title")
  if divlist is not None and len(divlist) > 0:
      for divitem in divlist:
          alist = divitem.find_all("a")
          if alist is not None and len(alist) > 0:
              ahref = alist[0].attrs["href"]
              title = alist[0].attrs["title"]
              download_queue.put([
                  "http://%s%s"%(host,ahref,),
                  title
              ])
def save_pdf(title, imgls, chost):
  headers = {
      "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",

[1] [2] [3]  黑客接单网

相关文章

Java安全编码之用户输入

1、传统Web使用与新式移动使用 (1)传统Web使用:浏览器 HTTP 服务器(2)新式移动使用:APP HTTP 服务器 从安全视点看,传统Web使用与新式移动使用没有本质区别 2、Web使用安全...

怎么脱节Google的影响,完成一个完全无Google要素的网络环境

本文我得先从我最近参加的一个安全检测项目开端谈起,本次的客户是一家企业,不得不说,本次咱们的客户的安全防护做得非常好。他们的安全运营中心(SOC)装备了许多先进的内部反常检测东西以及坚强的作业呼应团队...

Django 开发中你不可不知的 7 个 Web 安全头-黑客接单平台

Web 是一个不断发展的渠道,有许多向后兼容的问题。 新的 web 安全实践一般来自于对存在缺点的旧功用的知道。 与其经过改动这些功用来损坏旧网站,还不如挑选参加一些更安全的设置。 你能够经过设置 H...

Game-of-Thrones-CTF-1靶机彻底攻略

虚拟机地址:https://www.vulnhub.com/entry/game-of-thrones-ctf-1,201/ 这个靶机的难度较高,进程并不是趁热打铁,所以经过了屡次替换网络和IP的进程...

黑客接单网:现在杀毒软件的现状为什么开始走下坡路_杀毒软件的前世今生

黑客接单网:现在杀毒软件的现状为什么开始走下坡路_杀毒软件的前世今生

今天黑客接单网来和大家谈一谈我国杀毒软件的现状,现在大家打开杀毒软件大多数都会出现很多弹窗广告被大家说成流氓软件,为什么会出现这样的情况呢,我国网络安全也在走下坡路,我来和大家说说: 第...

Burpsuit结合SQLMapAPI发生的批量注入插件(X10)

1.1变化: 添加过滤设置 优化显现成果 添加运转提示信息 添加域名正则匹配 整个插件分为三个面板:使命面板、sqlmapapi参数装备面板、过滤条件面板。 使命面板 Server : SQLmap...